python - pxssh - 登录失败

时间:2014-04-11 21:28:42

标签: python ssh pexpect

我尝试通过pxssh python库使用ssh连接到服务器。 这是我的代码:

import pxssh
import getpass
try:
    s = pxssh.pxssh()
    s.force_password = True
    hostname = 'myserverip'
    username = 'username'
    password = 'password'
    s.login (hostname, username, password)
    s.sendline ('get system number')  # run a command
    s.prompt()             # match the prompt
    print s.before         # print everything before the prompt.
    s.logout()
except pxssh.ExceptionPxssh, e:
    print "pxssh failed on login."
    print str(e)

以下是我的回复:

pxssh failed on login.
could not set shell prompt
 unset PROMPT_COMMAND

error,09
$ PS1='[PEXPECT]\$ '

error,09
$ set prompt='[PEXPECT]\$ '

error,09
$

1 个答案:

答案 0 :(得分:0)

相当古老的问题,但仅适用于后代。 (对于像我这样会碰到这个的人:))

from pexpect import pxssh
import getpass
try:
    s = pxssh.pxssh()
    hostname = raw_input('hostname: ')
    username = raw_input('username: ')
    password = getpass.getpass('password: ')
    s.login(hostname, username, password)
    s.sendline('uptime')   # run a command
    s.prompt()             # match the prompt
    print(s.before)        # print everything before the prompt.
    s.sendline('ls -l')
    s.prompt()
    print(s.before)
    s.sendline('df')
    s.prompt()
    print(s.before)
    s.logout()
except pxssh.ExceptionPxssh as e:
    print("pxssh failed on login.")
    print(e)

我刚从http://pexpect.readthedocs.io/en/latest/api/pxssh.html#pexpect.pxssh.pxssh

中抽出来