xsync.sh

同步分发内容:
先安装 sudo yum install -y rsync

  1. #!/bin/bash
  2. #1 获取输入参数个数,如果没有参数,直接退出
  3. pcount=$#
  4. if((pcount==0)); then
  5. echo no args;
  6. exit;
  7. fi
  8. #2 获取文件名称
  9. p1=$1
  10. fname=`basename $p1`
  11. echo fname=$fname
  12. #3 获取上级目录到绝对路径
  13. pdir=`cd -P $(dirname $p1); pwd`
  14. echo pdir=$pdir
  15. #4 获取当前用户名称
  16. user=`whoami`
  17. #5 循环
  18. for((host=2; host<=5; host++)); do
  19. echo -------------------node$host --------------
  20. rsync -rvl $pdir/$fname $user@hd0$host:$pdir
  21. done

xcall.sh

在多台机器上执行相同的命令

  1. #! /bin/bash
  2. for i in hd02 hd03 hd04 hd05
  3. do
  4. echo --------- $i ----------
  5. ssh $i "$*"
  6. done