如何優雅的使用telnet測試埠連通性
telnet
是TELNET協議的使用者介面,它支援兩種模式:
模式和會話模式,雖然telnet支援許多命令,但大部分情況下,我們只是使用它檢視目標主機是否開啟了某埠(預設是23)。
其執行結果有兩種:
埠未開啟
$ telnet 101.199.97.65 62715 Trying 101.199.97.65... telnet: connect to address 101.199.97.65: Connection refused
此時,命令已退出。
埠已開啟
$ telnet 101.199.97.65 62715 Trying 101.199.97.65... Connected to 101.199.97.65. Escape character is '^]'.
此時命令未退出。
根據提示Escape character is '^]'.可知退出字元為'^]'(CTRL+])。此時輸入其它字元不能使其退出,CTRL+C都不行。輸入CTRL+]後會自動執行,進入命令模式:
^] telnet>
此時再執行 quit才會真正退出。
telnet> quit Connection closed.
其中,Escape character可以自定義,使用引數-e:
$ telnet -e p 101.199.97.65 62715 #使用p字元 Telnet escape character is 'p'. Trying 101.199.97.65... Connected to 101.199.97.65. Escape character is 'p'. p telnet> quit Connection closed.
即便如此,退出telnet還是麻煩。那麼,更進一步,如果出現在 中應該如何(優雅地)退出telnet呢?
方案
其實可以這樣:
輸出結果後立即退出
$ echo "" | telnet 101.199.97.65 62715 Trying 101.199.97.65... Connected to 101.199.97.65. Escape character is '^]'. Connection closed by foreign host. #已成功連通埠並自動退出
$ echo "" | telnet 101.199.97.65 62715 Trying 101.199.97.65... telnet: connect to address 101.199.97.65: Connection refused #埠未開放
輸出結果後延遲退出
sleep 2使得telnet輸出結果後,停留2秒後退出命令模式。
$ sleep 2 | telnet 101.199.97.65 62715 Trying 101.199.97.65... Connected to 101.199.97.65. Escape character is '^]'. Connection closed by foreign host.
使用這種方式可以將標準輸出和標準錯誤重定向到檔案中,透過分析檔案的內容來判斷埠開啟狀態。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2980434/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用telnet測試指定埠的連通性
- Telnet埠測試
- 使用 Java 測試網路連通性的幾種方法Java
- 如何快速全面驗證網路埠連通性
- 如何優雅地生成測試資料
- 如何優雅的管理、測試、編輯API介面文件?API
- 使用go優雅地撰寫單元測試Go
- 如何優雅的使用介面
- 如何優雅的使用MyBatis?MyBatis
- 如何實現優雅的重試?
- 如何優雅使用 vuexVue
- 如何優雅的使用Mock ServerMockServer
- Laravel如何優雅的使用SwooleLaravel
- 如何優雅地使用 macOSMac
- 如何優雅地使用 GitGit
- Java 如何優雅的使用註解Java
- React中如何優雅的使用UEditorReact
- Go Interface 的優雅使用,讓程式碼更整潔更容易測試Go
- centos 埠測試之nc使用CentOS
- MacOS下如何優雅的使用冰蠍Mac
- 如何優雅的使用執行緒池執行緒
- 使用telnet連線redisRedis
- testNG優雅的使用註解讓你的測試專案開發更高效!
- 優雅的使用UITableViewUIView
- Swift:如何優雅地使用 print()(三)Swift
- Flutter如何優雅的使用typedef回撥方法Flutter
- 如何使用Git 優雅的版本回退呢?Git
- 如何優雅的設計和使用快取?快取
- 如何優雅的使用 Angular 表單驗證Angular
- 如何在 React 中優雅的使用 addEventListenerReactdev
- springboot(六):如何優雅的使用mybatisSpring BootMyBatis
- Spring Boot(六):如何優雅的使用 MybatisSpring BootMyBatis
- 使用mtr排查伺服器網路連通性伺服器
- 使用 Guava Retry 優雅的實現重試機制Guava
- 如何優雅的搞垮伺服器,再優雅的救活伺服器
- windwos 使用telnet 連線 redisRedis
- 如何優雅的寫Markdown
- 有向圖的強連通性(java)Java