我尝试使用Python的subprocess
库与SSH进行交互。这是我目前的代码:
import subprocess
import time
proc = subprocess.Popen(["ssh", "-tt", "user@host"],
stdout=subprocess.PIPE, stdin=subprocess.PIPE)
time.sleep(10)
proc.stdin.write(b"ls\n")
while True:
next_line = proc.stdout.readline()
if next_line != '':
print(next_line.decode("utf-8"), end='')
else:
time.sleep(.01)
当我运行它时,我得到了通常的SSH安全标语,但没有别的。我通过公钥登录并已将主机添加到我的known_hosts列表中,因此我认为身份验证不应成为问题。通过将ls
更改为将文本写入文件的命令,我已经确认没有命令经过。"通过。有什么问题,我该如何解决?