Linux 分发文件的脚本
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历所有机器 (只有这里机器名要改 要分发多少机器写多少机器名 没写机器名与ip映射的 写ip)
for host in 机器名1 机器名2 机器名3
do
echo ====================== $host==========================
# 3. 遍历所有目录 挨个发送
for file in $@
do
#4. 判断文件是否存在
if [ -e $file ]
then
#5.获取父目录
pdir=$(cd -P $(dirname $file); pwd)
#6.获取当前文件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
echo ============success================
else
echo $file dose not exists!
fi
done
done
Linux 分发文件的脚本 (xsync 需要ssh无密)