我在使用 Arch 时遇到了一些麻烦netcat
,特别是它的 GNU 版本。
我的情况:我基本上用Python制作了一个简单的服务器,它可以接受多个客户端并发送响应。为了测试输入/输出,我制作了很多自动化测试脚本,这些脚本将数据发送netcat
到服务器并将输出与预期进行比较。
在我开发服务器和测试用例的环境(openSUSE Tumbleweed)上,netcat
通过管道将文本传输到 GNU
回显“文本”| netcat -w 2 -i 2ip 港口> 一些文件.out
按预期工作 -netcat
将数据发送到服务器,获取响应并将其重定向到文件。然而,在 Arch 上,-w
或标志似乎几乎-i
没有做任何事情 -netcat
只是无限期地保持连接,直到我必须手动关闭连接。即使当我单独尝试这些标志时,它也表现出类似的行为。
我尝试使用另一种方法timeout 2 netcat ...
,它确实停止netcat
运行,但由于某种原因也停止了我的整个脚本并阻止进一步的调用netcat
运行。
无奈之下,我什至尝试netcat
从源代码编译GNU,但仍然遇到问题。我尝试在互联网上搜索其他有类似问题的人,但找不到任何符合我情况的内容。
有人知道发生了什么事吗?我感觉我快要失去理智了。当然,它在不同发行版之间的工作方式不应该有所不同,除非我误解了什么?