2010-09-11 106 views
4

我想從Python腳本啓動交互式SSH終端使用像pexpect或paramiko這樣的模塊 - 我想堅持CentOS預裝Python提供給我的東西兼容性和部署問題)。從Python腳本啓動交互式SSH會話

我可以使用子流程模塊運行命令,但無法獲得交互式終端。在Perl中,我只是使用反引號來實現這一點,但我正在尋找pythonic這樣做的方式。

有人能指出我正確的方向嗎?

UPDATE - 基於@ leoluk的答案,我用從docs.python.org說明拿出:subprocess.call("ssh ...", shell=True)

回答

6

我得到一個交互式終端,如果我用os.system('ssh [...]')

+0

混合交互使用說明來使用os.system轉換爲POPEN,我能夠使其工作。 – sholsapp 2010-09-11 20:00:50

+0

@sholsapp您可以使用Popen分享您的解決方案嗎?謝謝! – mart1n 2016-04-07 08:48:20

+0

@ mart1n我已經更新了這個問題,以使用基於https://docs.python.org/2/library/subprocess.html#replacing-os-system指令取代'os的代碼。 system'。 – sholsapp 2016-04-07 18:27:03

-1

,如果你願意,你可以使用pexpext與自動響應

http://www.noah.org/wiki/Pexpect

+0

-1沒有任何評論?這個答案有什麼問題? – Falmarri 2010-09-12 03:41:54

+1

OP確實說過他/他不想用pexpect! – snim2 2013-03-11 11:47:01