(一)注:pexpect模块需安装
#!/usr/bin/env python
#coding:utf8
import pexpect
import sys
iplist = [‘192.168.140.142‘,‘192.168.140.145‘] ##定义主机列表
oldpasswd = ‘234567‘ ##旧密码
newpasswd = ‘1234567‘ ##新密码
while iplist:
ip = iplist[-1] ##获取一个IP
iplist.pop() ##列表去掉一个值
child = pexpect.spawn(‘ssh root@‘+ip) ##定义触发
fout = file(‘passlog.txt‘,‘a‘) ##定义日志文件,
child.logfile = fout
try:
while True:
index = child.expect([‘(yes/no)‘,‘(?i)password:‘])
if index == 0:
child.sendline(‘yes‘)
elif index == 1:
child.sendline(oldpasswd)
child.expect(‘#‘)
child.sendline(‘echo ‘+newpasswd+‘ | passwd --stdin root‘)
child.expect(‘#‘)
child.sendline(‘exit‘)
except pexpect.TIMEOUT:
pri