| 2010年12月21日
由于要做一个对大量机器访问并且执行命令的一个操作,一个一个来那肯定不行了,那家伙一个人做要到猴年马月啊。所以想写一个工具来完成,考虑到开发速度、对数据库访问的便捷性等因素,我选择了python开发。查了一下python的ssh库,呃用起来挺简单的。
这是个修改主机密码的登录demo
def ssh_cmd(ip, passwd, cmd, newpwd):
ret = -1
ssh = pexpect.spawn('ssh -q -p36000 root@%s "%s"' % (ip, cmd))
try:
i = ssh.expect(['password: ', 'continue connecting (yes/no)?'], timeout=5)
if i == 0 :
ssh.sendline(passwd)
elif i == 1:
ssh.sendline('yes\n')
ssh.expect('password: ')
ssh.sendline(passwd)
ssh.expect('New Password:')
ssh.sendline(newpwd)
ssh.expect('Reenter New Password:')
ssh.sendline(newpwd)
r = ssh.read()
ret = 0
except pexpect.EOF:
print "EOF"
ssh.close()
ret = -1
except pexpect.TIMEOUT:
print "TIMEOUT"
ssh.close()
ret = -2
return ret
关注「黑光技术」,关注大数据+微服务