ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 1. 需要系统安装有rsync: ``` yum install -y rsync ``` a)在/home/atguigu 目录下创建bin目录,并在bin目录下xsync创建文件,文件内容如下: ``` mkdir bin cd bin/ touch xsync vim xsync ``` 在该文件中编写如下shell脚本: ``` #!/bin/bash #1 获取输入参数个数,如果没有参数,直接退出 pcount=$# if [ $pcount -lt 1 ] then echo Not Enough Arguement! exit; fi #2. 遍历集群所有机器 # 也可以采用: # for host in hadoop{102..104}; for host in node1 node2 node3 do echo ==================== $host ==================== #3. 遍历所有目录,挨个发送 for file in $@ do #4 判断文件是否存在 if [ -e $file ] then #5. 获取父目录 pdir=$(cd -P $(dirname $file); pwd) echo pdir=$pdir #6. 获取当前文件的名称 fname=$(basename $file) echo fname=$fname #7. 通过ssh执行命令:在$host主机上递归创建文件夹(如果存在该文件夹) ssh $host "mkdir -p $pdir" #8. 远程同步文件至$host主机的$USER用户的$pdir文件夹下 rsync -av $pdir/$fname $USER@$host:$pdir else echo $file does not exists! fi done done ``` b)修改脚本 xsync 具有执行权限 ``` chmod 777 xsync ``` c)调用脚本形式:xsync 文件名称 ``` xsync /home/atguigu/bin ``` **注意:如果将xsync放到/home/zxy/bin目录下仍然不能实现全局使用,可以将xsync移动到/usr/local/bin目录下。**