Netcat

如何使用 netcat 重定向 udp 響應

  • December 12, 2014

與如何使用 netcat 獲得 udp 響應類似的問題,除了 OP 對互動式使用 nc 感到滿意(而且我還沒有評論的聲譽!)

我需要能夠編寫一些 bash 腳本並處理響應。應該如何更改下面的程式碼以獲取文件 response.txt 中的響應或以其他方式擷取 bash 中後面程式碼行的響應?

echo "request" | nc -u 1.1.1.1 9999 > response.txt

伺服器可能需要幾秒鐘甚至幾分鐘來生成響應和回复。當我嘗試以下操作時,我立即返回到命令提示符並且 response.txt 為空。

echo "request" | nc -u 1.1.1.1 9999 | tee response.txt

(我確實確認執行 nc -u 1.1.1.1 9999 並在一行上單獨鍵入“請求”會返回預期的響應。但是如何擷取它呢?)

提前致謝!

當我嘗試nc您使用的命令時,它掛起並且從未退出。所以我添加了-q 22 秒後超時的選項,它對我有用:

chicks@silver 17:34:54 ~ !548 $ echo "foo" | nc -u 127.0.0.1 7777 -q 2 > /tmp/z
chicks@silver 17:34:59 ~ !549 $ cat /tmp/z
foo

所以你只需要選擇一個你可以忍受的超時。:)

引用自:https://serverfault.com/questions/651979