xsync分发脚本
rsync主要用于备份和镜像
rsync和scp的区别
rsync复制要比scp快,并且只对差异文件做更新,scp是把所有文件复制粘贴。
语法
rsync -rvl $pdir/$fname $user@hadoop$host:$pdir/$fname
-r 递归
-v 显示复制过程
-l 拷贝符号连接
xsync###
1.需求:集群分发,循环复制文件到所有节点的相同目录下
2.脚本实现:在/usr/local/bin目录下添加xsync脚本
#获取输入参数个数
pcount=$#
if((pcount==0));then
echo no args;
exit;
fi
#获取文件名称
p1=$1
fname='basename $p1'
echo fname=$fname
#获取上级目录到绝对路径
pdir='cd -P $(dirname $p1);pwd'
echo pdir=$pdir
#获取当前用户名称
user='whoami'
#循环
for((host=120;host<123;host++));do
echo --------------hadoop$host--------------
rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
done
修改脚本xsync具有执行权限
chmod 777 xsync