2014-03-27 25 views
0

我有一個控制器,我ssh與IP和密碼。一旦我去控制器,我需要打開另一個處理程序來訪問Linux命令。要訪問這個處理程序,我需要以root身份登錄並提供密碼。 我該怎麼做在Python中使用ssh?打開另一個處理程序從ssh到Python的遠程主機

Login to controller as 
user: root 
password: root 
Inside Controller 
<cntrlprompt># logas root 
Password:123456 
After this step it would provide bash prompt 
bash# ls -al 
<capture ls -al output and return to main program. 

這對我來說非常具有挑戰性,任何對此的幫助都會感激不盡。 謝謝

+0

請嘗試http://stromberg.dnsalias.org/~strombrg/ssh-keys.html。否則,看看pexpect或pty。 – dstromberg

回答

1

pexpect可能是你想要的。這是一個python庫,可以讓你腳本shell交互。這是一個說明匿名ftp會話的example。研究它並建立自己的交互場景應該相當容易。

+0

如果我正在運行命令並從該命令獲取大量輸出,那麼pexpect能夠處理它嗎? 我如何處理該輸出並解析它。它真的是大輸出? – NoviceInPython

+0

您可以通過pexpect訪問命令輸出。處理或分析它取決於你。 – ylabidi

+0

我使用pexpect在python中從apache httpd產生ssh時遇到問題?單獨執行python可以正常工作,但不能通過apache。 – NoviceInPython

相關問題