2010-02-22 63 views
1

我目前有一個腳本,ssh進入另一臺服務器並運行命令。如果我想連接(是/否)和密碼,當ssh命令在提示中運行時。有沒有辦法,當ssh調用時,我可以自動提供輸入的提示?如何在運行linux ksh腳本時自動提供輸入以提示?

此外,我知道使用公鑰和ssh命令可以解決此問題,但我沒有創建公鑰的權限。

回答

3

Don Libes創建了Expect,所以您可以編寫需要與提示交互的工具。我甚至用它調制解調器!這是一個非常古老的工具,但非常有效,它值得被廣爲人知。

唯一的缺點是它使用Tcl,這不是我最喜歡的編程語言。但要學習足夠的Tcl來製作簡單的期望腳本不會超過一個小時。而Expect真的是這項工作的完美工具。

+0

很多語言都有Expect的端口,特別是python的思想與思考 – prestomation

+1

雖然它可能不是每個人最喜歡的語言,但它非常適合這種類型的工作。爲這項工作使用正確的工具,在這種情況下,期望通常優於任何其他工具。它非常成熟,非常健壯,非常穩定。 –

+0

@Bryan:對! –

0

你能下載並安裝外部工具嗎?如果您可以嘗試,請嘗試sshpass。我沒有嘗試,但你可以放棄它。

相關問題