#!/usr/bin/env python
# -*- coding:utf-8 -*-
import pexpect
def connect(ip,passwd,cmd):
ret = -1
ssh = pexpect.spawn('ssh root@%s "%s"'%(ip,cmd),timeout=2,searchwindowsize=10)
try:
i = ssh.expect(['password: ','continue connecting (yes/no)?'])
if i == 0:
ssh.sendline(passwd)
elif i == 1:
ssh.sendline('yes\n')
ssh.expect('password: ')
ssh.sendline(passwd)
r = ssh.read()
print r
ret = 0
except pexpect.exceptions.EOF:
print "EOF"
ssh.close()
ret = -1
except pexpect.TIMEOUT:
print "TIMEOUT"
ssh.close()
ret = -2
return ret
if __name__ == '__main__':
iplists = open('iplist','r+')
iplist = iplists.readlines()
for ip in iplist:
templist = []
ip = ip.strip('\n')
if ip:
cmd = 'df -h'
passwdList = [
{"password":"123"},
{"password":"1234"},
{"password":"12345"}
]
for i in passwdList:
passwd = i['password']
result = connect(ip,passwd,cmd)
if result == 0:
break
else:
templist.append(ip)
if templist.count(ip) == 3:
with open('errlist','a+') as f:
f.write('%s\n'%ip)
else:
print "Ip error,Please enter right ip info..."