用途:
用於批量修改密碼,基於賬戶密碼過期後繁瑣的交互修改過程實現自動修改(因交互次數不同,需自行修改);
環境說明:
1、腳本執行主機上需安裝expect包;可通過rpm直接安裝;
2、hosts.txt文件爲要修改密碼的主機ip地址列表。
[root@localhost tmp]# cat newpass.sh
#!/bin/bash
oldpasswd="oldpasswd"
newpasswd="newpasswd"
for i in cat /tmp/hosts.txt
do
/usr/bin/expect << EOF
spawn /bin/ssh root@$i
expect {
"yes/no" { send "yes\r" }
}
expect "password:"
send "$oldpasswd\r"
expect "Last"
send "passwd\r"
expect "current"
send "$oldpasswd\r"
expect "New"
send "$newpasswd\r"
expect "Retype"
send "$newpasswd\r"
send "exit\r"
expect eof
EOF
done