Shell分发系统

rsync.expect

#!/usr/bin/expect
setpasswd"123456"##建议用密钥,防止口令泄露
sethost[lindex$argv0]
setfile[lindex$argv1]
spawnrsync-avR--files-from=$file/root@$host:/
expect{
"yes/no"{send"yes\r"}
"password:"{send"$passwd\r"}
}
expecteof


list.txt

/tmp/1.txt
/usr/local/sbin/2.sh


ip.list

192.168.89.134
192.168.87.167


rsync.sh

#!/bin/bash
foripin`cat/tmp/ip.list`
do
echo$ip
./rsync.expect$ip/tmp/list.txt
done


除了文件的分发外,还可以批量执行命令。

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...