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
原文地址:https://www.cnblogs.com/zqzhen/p/12917963.html