同步脚本,在第5步要拼接自己配置的主机名
#!/bin/bash
# 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if((pcount==)); then
echo no args;
exit;
fi # 获取文件名称
p1=$
fname=$(basename $p1)
echo fname=$fname # 获取上级目录到绝对路径
pdir=$(cd -P $(dirname $p1); pwd)
echo pdir=$pdir # 获取当前用户名称
user=$(whoami) # 循环
for((host=; host<; host++)); do
#echo $pdir/$fname $user@hadoop${}$host:$pdir
echo --------------- hadoop00$host ----------------
rsync -rvl $pdir/$fname $user@hadoop00$host:$pdir
done
命令脚本(注意修改拼接的主机名)
#!/bin/bash
pcount=$#
if((pcount==));then
echo no args;
exit;
fi #echo -------------localhost----------
$@
for((host=; host<=; host++)); do
echo ----------hadoop00$host---------
ssh hadoop00$host $@
done
把脚本保存在/usr/local/bin下就可以全局范围执行了