酷!學園
技術討論區 => 程式討論版 => 主題作者是: hongbin 於 2007-04-18 10:07
-
小弟有有一台 cisco router ,用command line 方式 telnet 過去時會產生以下的訊息
User Access Verification
Password:
當然這時便可開始輸入密碼進行驗證,一切都很正常,
但當小弟將這個步驟改成是用 expect方式 連過去時,
expect 檔名為 router.sh,內容如下:
#!/usr/bin/expect --
spawn telnet router_ip
expect "word:"
send "password\r"
expect ">"
interact
執行後卻會產生下面錯誤訊息:
spawn telnet route_ip
send: invalid spawn id (4)
while executing
"send "password\r""
(file "./router.sh" line 5)
網路上這方面的資料似乎比較少,請問各位先進是否曾經遇過類似的問題,謝謝..
-
小弟有有一台 cisco router ,用command line 方式 telnet 過去時會產生以下的訊息
User Access Verification
Password:
當然這時便可開始輸入密碼進行驗證,一切都很正常,
但當小弟將這個步驟改成是用 expect方式 連過去時,
expect 檔名為 router.sh,內容如下:
#!/usr/bin/expect --
spawn telnet router_ip
expect "word:"
send "password\r"
expect ">"
interact
執行後卻會產生下面錯誤訊息:
spawn telnet route_ip
send: invalid spawn id (4)
while executing
"send "password\r""
(file "./router.sh" line 5)
網路上這方面的資料似乎比較少,請問各位先進是否曾經遇過類似的問題,謝謝..
你的 script 似乎沒什麼問題,會不會你這個 telnet 沒有成功?
先把 expect 及 send 幾行都 mark 起來測看看。
-
sorry,少給了一些資訊,小弟是在作業系統為winxp ,安裝cygwin
當這個expect 是透過 spawn ssh 方式到其他台主機時,是可正常work
但很奇怪,用spawn telnet 的方式就有問題,查看網路封包的狀態,連
telnet 的封包都沒送出,有可能是小弟的電腦有問題,小弟會在檢查看看
也謝謝版主大大的回覆...