我刚刚开始使用bash脚本,并尝试使用一个简单的管道:
#!/bin/sh
mkfifo apipe
cat apipe | nc -l $1 | /home/matt/testprogram > apipe假设端口号可以正常工作,程序也可以按照我想要的方式工作,那么是什么让这个脚本变得一团糟呢?
我的程序应该打印一些文本,并使用fgets接收一些用户输入。当我运行我的shell脚本时,我希望它看起来就像我只是正常地运行程序一样。当我运行它的时候,我只是让它变得空白,什么也不做,我必须用ctrl+C打破它。
我在终端中键入如下内容:
sh testnc.sh 2342谢谢你的建议
发布于 2011-11-07 13:03:40
您错误地使用了NC。nc -l $1正在侦听该端口上的外部连接。所以你可以运行下面这样的代码:
主机1:
nc -l <port> | /home/matt/testprogram主机2:
cat files | nc <host1> <port>但是你所做的用法没有任何意义。
https://stackoverflow.com/questions/8032803
复制相似问题