Chinaunix

标题: netcat的重定向问题 [打印本页]

作者: prettywolf    时间: 2017-04-26 21:47
标题: netcat的重定向问题
想在shell里面用netcat监听udp端口,等待其它的客户端发送令,netcat监听后重定向到一个fifo文件,再在其它的shell中读取fifo,以取得每条指令进行解析.
实现如下:
nc -l -p1111 -n -u 192.168.1.10
这样子netstat -a可以看到1111端口已经在监听,在其它客户端发送一个字符串,可以看到输出.但是这时我无法提取字符串进行解析执行.
试着把输出重定向到fifo,这样我就可以在其它脚本中读取这个字符串.
mkfifo /tmp/pipe
nc -l -p1111 -n -u 192.168.1.10>/tmp/pipe
照理来说,这样子我就可以在其它地方执行(如果我执行echo "hello">/tmp/pipe 下面几句是有输出的)
if read line</tmp/pipe
then
echo $line
fi

取得这个字符串了.
但是这时执行netstat -a却没发现1111端口在监听,ps -ef也没看到nc进程在运行.
我该怎样才能取得接收到的字符串进行处理呢?


作者: prettywolf    时间: 2017-04-26 22:06
嚓,弄了这么久居然是一个大乌龙,nc -l -p1111 -u 192.168.1.10>/tmp/pipe能运行了.客户端发送字符串时要发送一个回车才会有接收.





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2