服务器同步:
可以使用rsync同步,但是需要输入用户名密码;这种情况下我们就可以使用expect完成
安装expect包
#yum install expect -y
#rsync /etc/passwd root@192.168.1.129:/tmp //同步/etc/passwd文件到192.168.1.129服务器的/tmp文件夹
expect配合send使用,根据提示输入对应的交互信息。
1
2
3
4
5
6
7
8
9
10
11
|
#!/usr/bin/expect set USERNAME [ lindex $argv 0 ] set PASSWORD [ lindex $argv 1 ] set SRC [ lindex $argv 2 ] set DEST [ lindex $argv 3 ] spawn /usr/bin/rsync $SRC $USERNAME@192.168.1.129:$DEST expect "yes/no" send "yes/r" expect "$PASSWORD" send "redhat/r" expect eof |