我正在使用pxssh模块通过ssh连接到远程服务器。我使用以下函数发送命令
def send_command(session , cmd):
session.sendline(cmd)
session.prompt()
return session.before
这适用于ls
,pwd
等
问题:
当我输入请求身份验证或用户输入的命令(如sudo
,vim
)时,程序会挂起并且不返回任何内容。我们如何解决这个问题?
答案 0 :(得分:1)
您不能将send_command()
用于期望用户互动的命令,例如提供密码。
session.sendline(cmd) # program started
# put here user interaction
# ... expect('(?i)password:'); sendline(passwd) ...
session.prompt() # program ended (the shell prompt is shown)