hadoop集群实现分发文件命令xsync脚本文件

 1 #!/bin/bash
 2 
 3 #1. 判断参数个数
 4 if [ $# -lt 1 ]
 5 then
 6     echo Not Enough Arguement!
 7     exit;
 8 fi
 9 
10 #2. 遍历集群所有机器
11 for host in hadoop102 hadoop103 hadoop104
12 do
13     echo ====================  $host  ====================
14     #3. 遍历所有目录,挨个发送
15 
16     for file in $@
17     do
18         #4. 判断文件是否存在
19         if [ -e $file ]
20             then
21                 #5. 获取父目录
22                 pdir=$(cd -P $(dirname $file); pwd)
23 
24                 #6. 获取当前文件的名称
25                 fname=$(basename $file)
26                 ssh $host "mkdir -p $pdir"
27                 rsync -av $pdir/$fname $host:$pdir
28             else
29                 echo $file does not exists!
30         fi
31     done
32 done

 

posted @ 2022-03-17 08:13  靠谱杨  阅读(112)  评论(0编辑  收藏  举报