1

重複の可能性:
Paramiko で対話型コマンドを実行する

私はPythonが初めてです。paramiko を使用してリモート コンピューターでバッチ ファイルを実行しようとしています。

import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("host", username="uname", password="pwd", allow_agent = False)
i, o, e = ssh.exec_command("c://test.bat")
print o.read()

問題は、ある時点でリモート バッチ ファイルが入力を待機 (一時停止) しているため、読み取りコマンドの後にスタックして何も出力されないことです。

助言がありますか ?

4

1 に答える 1

0

paramiko が厳密な要件でない場合は、 fexpectを使用したファブリックを検討できます。

from fexpect import expect, expecting, run 

prompts = []
prompts += expect('What is your name?','John')

with expecting(prompts):
    run('c://test.bat')
于 2012-10-30T15:31:34.903 に答える