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
除了文件的分发外,还可以批量执行命令。