基于rsync在Linux集群节点间进行数据分发,其比scp更加高效。
代码如下:
#!/bin/bash
#1judge para number
pcount=$#
if((pcount==0)); then
echo “no args”;
exit;
fi
#2 echo source file name
p1=$1
fname=`basename $p1`
echo fname=$fname
#3 get parent path
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
#4 get current userName
user=`whoami`
#5 loop send
for host in chdp11 chdp12 chdp13
do
echo ------------------- $host -------------------
rsync -rvl $pdir/$fname $user@$host:$pdir
done