14

そのため、基本的なSSHテストのためにparamikoを使用していましたが、stdoutに出力がありません。これが私のコードです。

import paramiko
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
com="ls ~/desktop"
client.connect('MyIPAddress',MyPortNumber, username='username', password='password')
output=""
stdin, stdout, stderr = client.exec_command(com)

print "ssh succuessful. Closing connection"
client.close()
print "Connection closed"
stdout=stdout.readlines()
print stdout
print com
for line in stdout:
    output=output+line
if output!="":
    print output
else:
    print "There was no output for this command"

したがって、これを実行するたびにコマンドが実行されます (cp のようなことをすると、ファイルがコピーされます) が、常に「このコマンドの出力はありませんでした」というメッセージが表示されます。stdout=stdout.readlines() が出力されると、 [] が出力されます。さらに、for ループに print ステートメントを追加すると、実行されません。誰かがここで私を助けてくれますか? ありがとう!

4

5 に答える 5