仿pscp的一个简单批量scp的shell

转载请注明出处:http://www.cnblogs.com/blazer/p/5179750.html 

环境:CentOS6.4 

 

功能:将本地文件或目录批量scp到各个目标机器。

 

前提:ssh无密码访问你必须配好。

vi scp.sh

 

for line in `cat $1`
do
    if [ "$3" == "" ]
    then
        # dir
        echo scp -r $2/ $line:$2/
        scp -r $2/ $line:$2/
    else
        # files
        echo scp ${@:3} $line:$2/
        scp ${@:3} $line:$2/
    fi
done

 

第一个参数:必须,host的路径,里面应该是一个ip一行

第二个参数:必须,文件路径

第三个参数:可选,如果没有,则scp一个目录,如果有,则scp该参数所配置的文件

 

第一个参数的示例:

vi /home/hadoop/slaves
192.168.0.100
192.168.0.101

 

scp 多个文件,执行:

sh scp.sh /home/hadoop/slaves /home/hadoop hyy.csv hyy2.csv

会将本地目录/home/hadoop下的hyy.csv和hyy2.csv scp 到slaves里面ip机器的目录/home/hadoop下

 

scp 一个目录,执行:

sh scp.sh /home/hadoop/slaves /home/hadoop/conf

 会将本地目录/home/hadoop/conf  scp 到slaves里面ip机器的目录/home/hadoop/conf

 

posted @ 2016-02-03 15:11  BlazerHe  阅读(990)  评论(0编辑  收藏  举报