2015-02-11 53 views
0

我需要在遠程服務器上的bash shell中運行迴歸腳本。我能夠使用paramiko成功連接和執行不同的命令。但是,當我嘗試執行「/斌/慶典」我的Python腳本掛起永遠:python paramiko在試圖運行bash shell時掛起

stdin,stdout,stderr = ssh.exec_command("pwd;/bin/bash;echo $SHELL") 

無/斌/慶典回聲$ SHELL做工不錯,並返回以下:

[u'/home/akar\n', u'/tools/cfr/bin/tcsh\n'] 

有什麼解決方法嗎?

回答

1

我的第一個懷疑是你正在執行的bash的目的是什麼。字面意思:

pwd; #print '/home/akar\n' as it results 
/bin/bash; #/bin/bash will take over of console(stdin/stdout/stderr) from here 
echo $SHELL #when you input exit to exit the bash from line 2, line 3 will print 
+0

我需要執行是一個bash腳本是這樣的:標準輸入,標準輸出,標準錯誤= ssh.exec_command(「CD /project/fcd_psv/akar/neptune_psv/fw;./Do_Regr.sh -i Testlist_Regression.in -m 135.21.235.177 -g「);不做/ bin/bash它不會運行 – user3565150 2015-02-11 09:13:35

+0

stdin,stdout,stderr = ssh.exec_command有沒有問題(「cd /project/fcd_psv/akar/neptune_psv/fw;./Do_Regr.sh -i Testlist_Regression.in - m 135.21.235.177 -g「); ?您可以通過傳遞sh文件的路徑來調用/ bin/bash。但不要勉強打電話/ bin/bash; – 2015-02-11 09:18:46