我正在试图在Bash中实现一个简单的日志服务器。 它应该把一个文件作为参数,并通过netcat在一个端口上提供。 ( tail -f $1 & ) | nc -l -p 9977 但是问题是,当netcat终止时,尾部被遗忘运行。 (澄清:如果我不分叉尾部进程,它将继续运行,即使netcat终止。) 如果我以某种方式知道尾巴的PID,那么我可以在之后杀死它。 显然,使用$! 将返回netcat的PID。 我怎样才能得到尾部进程的PID?
我正在尝试使用netcat(nc)设置一个最小的Web服务器。 例如,当浏览器调用localhost:1500时,它应该显示一个函数的结果(在下面的例子中是date ,但最终会是一个产生一些数据的python或c程序)。 我的小型netcat web服务器需要在bash中成为一个真正的循环,可能就像这样简单: while true ; do echo -e "HTTP/1.1 200 OK\n\n $(date)" | nc -l -p 1500 ; done 当我尝试这个浏览器显示当前可用的数据在NC开始的那一刻。 不过,我希望浏览器在浏览器请求的时候显示数据。 我怎样才能做到这一点?
我想只发送一个UDP数据包中的短值,但是运行该命令 echo -n "hello" | nc -4u localhost 8000 我可以看到服务器得到你好的东西,但我不得不按Ctrl + C退出netcat命令。 发送问候后如何退出? 对不起,对于噪音,我重新阅读手册页,并find了-q选项。 echo -n "hello" | nc -4u -q1 localhost 8000 作品(1秒后退出)。 出于某种原因,它不适用于-q0 。