Python pexpect SSH登录不适用于宽终端

时间:2015-10-16 15:12:42

标签: python ssh pexpect

将此脚本与宽端子(132x24)一起使用时,键入超过80个字符的行时显示会出现乱码。字符回绕并覆盖行的开头。此外,vi认为终端是80x24。交互式SSH连接没有问题。

如何让pexpect登录行为像普通的交互式SSH登录?

#!/usr/bin/python
import pexpect
import sys

hostname = sys.argv[1]
username = 'user1'
password = 'test123'
cmd = 'ssh '+username+'@'+hostname

c = pexpect.spawn(cmd)
c.expect('assword:')
c.sendline(password)
c.interact()

使用脚本

登录
$ psh localhost
Last login: Sat Oct 17 01:51:53 2015 from localhost
$ tput cols
80

交互式SSH登录

$ ssh localhost
user1@localhost's password: 
Last login: Sat Oct 17 01:53:52 2015 from localhost
$ tput cols
132

0 个答案:

没有答案