2011-06-10 103 views
1

我想通過運行./script檢查北電路由器:發送SSH命令與腳本

#!/bin/ksh 
print "IP:" 
read ip; 
ping ${ip}; 
ssh -l default ${ip} "sho mod; en; sho int; sho node-e; sho node-a"; 

我可以 SSH -l [用戶] [IP] normaly SSH協議。

但不是 ssh -l [user] [ip]'[cmd1],[cmd2]'它會自動顯示「Conection to [ip] closed」。

+0

如果將命令離開最後?那麼ssh成功完成了嗎? – 2011-06-10 15:26:25

+0

當您運行腳本時,您如何發送密碼?或者你使用'$ HOME/.ssh/authorized_keys'(或類似的)。祝你好運! – shellter 2011-06-10 16:37:53

回答

1

有一個叫做expect的應用程序可以爲你做這種交互/終端模擬。否則,你可以使用fabric甚至直接使用python編寫腳本paramiko

以這種方式運行命令當然會更好,但是如果您的路由器不以這種方式接受命令,則需要模擬標準連接。

+0

這裏的問題很可能是你的路由器,因爲我嘗試了你的命令。我會建議去北電的網站,並在那裏詢問有關具體問題。 – Nitrodist 2011-06-15 03:17:49