Echo
netcat:向回顯服務發送文本,讀取回复然後退出
我想用
netcat
發送一段文本到我伺服器上的 echo 服務,得到回复然後退出,這樣我就知道連接仍然很好。到目前為止,我已經嘗試過:echo 'test' | netcat server 7
這樣 netcat 將等待更多輸入而不是退出。
netcat
收到回顯服務的回復後如何退出?
netcat-openbsd
剛剛嘗試過 -和netcat-traditional
(ubuntu 16.4)之間的行為略有不同。OpenBSD 變體可以滿足您的期望,而使用 netcat-traditional 我需要添加-q 1
以避免等待更多輸入。echo 'test' | netcat -q 1 server 7
您的命令應該有效。它與手冊頁中的一些範例非常相似
netcat
。這正是
netcat
應該如何操作的:一旦它在標準輸入上達到 EOF,它(單向)關閉連接/到/伺服器,然後等待來自伺服器的數據。當後者關閉連接時(另一種方式:伺服器->客戶端),然後netcat
停止。如果您的
netcat
命令沒有完成,我想在網路級別發生了一些奇怪的事情,使echo
伺服器一直在監聽額外的輸入。您可以嘗試在標準輸入上遇到 EOF 後
-q
強制停止 N 秒的選項:netcat
netcat -q1 server echo <<< "test"
(
<<< "test"
是一個bash
主義,echo ... |
如果你不使用,請使用你的語法bash
)