【发布时间】:2018-08-17 04:41:54
【问题描述】:
我正在尝试在 bash 中设置一个简单的 TCP 服务器,它可以侦听请求、处理接收到的数据,然后向客户端发送响应。
有没有办法使用 netcat 正确地做到这一点?
编辑 - 我已经尝试过:
- 将服务器的输出通过管道传输到 bash 脚本:
nc -kl 4444 | bash pipe.sh
然后,在 pipe.sh 中,阅读答案。但这也有一些缺点:有时 read 的行为很奇怪,没有得到完整的输出,而且我找不到向客户端发送响应的方法。 - 更完整的东西看起来像this,但它会导致一些问题,因为它是交互式的并等待用户输入,所以有时服务器会回答 2 次或根本不回答任何问题。
【问题讨论】:
-
欢迎来到 Stack Overflow!请更新您的问题以显示您在minimal, complete, and verifiable example 中已经尝试过的内容,并添加示例输入和预期输出。如需更多信息,请参阅how to ask good questions,并拨打tour of the site :)
-
Bash 可能正在通过该管道缓冲内容..也许编写您自己的服务器...
标签: bash sockets tcp server netcat