酷!學園

技術討論區 => 程式討論版 => 主題作者是: hongbin 於 2007-04-18 10:07

主題: 請問expect script 一個問題..(invalid spawn id)
作者: hongbin2007-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)

網路上這方面的資料似乎比較少,請問各位先進是否曾經遇過類似的問題,謝謝..
主題: Re: 請問expect script 一個問題..(invalid spawn id)
作者: thyme2007-04-18 11:32
引述: "hongbin"
小弟有有一台 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 起來測看看。
主題: 請問expect script 一個問題..(invalid spawn id)
作者: hongbin2007-04-18 12:27
sorry,少給了一些資訊,小弟是在作業系統為winxp ,安裝cygwin
當這個expect 是透過 spawn ssh 方式到其他台主機時,是可正常work
但很奇怪,用spawn telnet 的方式就有問題,查看網路封包的狀態,連
telnet 的封包都沒送出,有可能是小弟的電腦有問題,小弟會在檢查看看
也謝謝版主大大的回覆...