Telnet
如何阻止 telnet 會話超時?
我使用 telnet 連接到 Cisco 路由器。
連接每 3 分鐘超時一次。
如何阻止我的 telnet 會話由於超時而與路由器斷開連接。
我了解 putty 和 SecureCRT 可以定期發送空字元或轉義字元以阻止會話(telnet 或 SSH)超時。
如何在沒有 3rd 方程序的 Linux 上執行此操作?啟動終端時,我使用以下腳本作為啟動腳本:
#!/usr/bin/expect -f spawn telnet <Router IP Address> expect -re "ogin: " send "*******\n" expect -re "assword:" send "***********\n" sleep 2 expect "Router>" interact
的
interact
語句expect
可以採取成對的模式和動作,有點像expect
語句。特別是,您可以添加超時模式和發送操作。例如,interact timeout 10 { send "date\r" }
會像往常一樣發送您輸入的內容,但如果您在 10 秒內不輸入,它將發送字元串
date
和輸入。如果您使用 telnet,在字元模式下,您可以通過簡單地發送一個空格後跟一個退格鍵來保持連接,這不會破壞您已經輸入的任何部分行:interact timeout 150 { send " \b" }