Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1688571
  • 博文数量: 362
  • 博客积分: 10587
  • 博客等级: 上将
  • 技术积分: 4098
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-10 18:15
文章分类

全部博文(362)

文章存档

2014年(1)

2013年(58)

2011年(115)

2010年(112)

2009年(76)

分类: Python/Ruby

2011-09-07 16:31:18

  1. def ssh_cmd(ippasswdcmdnewpwd):
  2.     ret = -1
  3.     ssh = pexpect.spawn('ssh -q -p36000 root@%s "%s"' % (ipcmd))
  4.     try:
  5.         i = ssh.expect(['password: ''continue connecting (yes/no)?']timeout=5)
  6.         if i == 0 :
  7.             ssh.sendline(passwd)
  8.         elif i == 1:
  9.             ssh.sendline('yes\n')
  10.             ssh.expect('password: ')
  11.             ssh.sendline(passwd)
  12.         ssh.expect('New Password:')
  13.         ssh.sendline(newpwd)
  14.         ssh.expect('Reenter New Password:')
  15.         ssh.sendline(newpwd)
  16.         r = ssh.read()
  17.         ret = 0
  18.     except pexpect.EOF:
  19.         print "EOF"
  20.         ssh.close()
  21.         ret = -1
  22.     except pexpect.TIMEOUT:
  23.         print "TIMEOUT"
  24.         ssh.close()
  25.         ret = -2
  26.     return ret
  27. 参考:http://www.ibm.com/developerworks/cn/linux/l-cn-pexpect1/
阅读(3977) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~