与如何使用 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 并在一行上单独键入“request”会返回预期的响应。但是如何捕获它呢?)
提前致谢!
当我尝试
nc
您使用的命令时,它挂起并且从未退出。所以我添加了-q 2
2 秒后超时的选项,它对我有用:所以你只需要选择一个你可以忍受的超时。:)