2016-04-19 8 views
1

ためpexpectを使用してだから私はpexpectのドキュメントを読んだ後、次のことを書いている間:EOF例外SSHパスワードプロンプト

import pexpect 
from pexpect import popen_spawn 
child = popen_spawn.PopenSpawn("ssh -t -t [email protected]") 
child.expect('password:') 
child.sendline('pwd')  # Send the password 

は今ここに私が取得していますエラーがあります:

Traceback (most recent call last): 
    File "C:\ssh_exp.py", line 4, in <module> 
    child.expect('password:') 
    File "C:\Python27\lib\site-packages\pexpect\spawnbase.py", line 315, in expect 
    timeout, searchwindowsize, async) 
    File "C:\Python27\lib\site-packages\pexpect\spawnbase.py", line 339, in expect_list 
    return exp.expect_loop(timeout) 
    File "C:\Python27\lib\site-packages\pexpect\expect.py", line 102, in expect_loop 
    return self.eof(e) 
    File "C:\Python27\lib\site-packages\pexpect\expect.py", line 49, in eof 
    raise EOF(msg) 
pexpect.exceptions.EOF: End Of File (EOF). 
<pexpect.popen_spawn.PopenSpawn object at 0x0000000002BA3F98> 

私が確認しましたserver1への接続が適切であり、パスワードの入力を求めずにsshが終了しないことを確認します。私はここに欠けているものはありますか?

+0

パスワードプロンプトはどのように表示されますか? – Jakuje

+0

プロンプトのテキストは 'root @ server1's password:' – Erric

+0

です。これはWindowsでpexpectを使用する際によくあるエラーです。私は今、それをデバッグしています。 – newlog

答えて

1

通常、これは予想されるもの(「パスワード」)が出力に見つからない場合に発生します。

サーバがあなたのマシンに公開鍵をインストールすることを要求した時、あなたは '(yes/no)? - 以下の出力のように。

ホストの真正性は確立できません。 ECDSAキー指紋はx:xx:35:ae:1a:2e:69:e4:4d:b4:5e:2d:02:xx:f2:edです。 接続を継続してもよろしいですか(はい/いいえ)?

関連する問題