概述
#!/usr/bin/expect -f
#chmod 777 distribute_file.sh
#把所有目的ip写入ipfile.txt文件,ipfile.txt文件与distribute_file.sh在同一层目录,ipfile.txt文件中一行写一个ip
#sh distribute_file.sh 源服务器路径 目的服务器路径
#例如:sh distribute_file.sh /home/yxl/ /home/test/test1/
#path: 源服务器路径
#topath: 目的服务器路径
password=123456
path=$1
topath=$2
while read -r ipline
do
for line in $(ls ${path})
do
expect<<-END
spawn scp ${path}${line} root@${ipline}:${topath}
expect {
"(yes/no)?" {send "yesr"; exp_continue}
"${ipline}'s password:" {send "${password}r"}
"Permission denied" { send_user "[exec echo "nError: Password is wrongn"]"; exit}
}
expect eof
exit
END
done
done < ipfile.txt
最后
以上就是健康大侠为你收集整理的shell-scp分发文件夹下所有文件到多台服务器的全部内容,希望文章能够帮你解决shell-scp分发文件夹下所有文件到多台服务器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复