我刚刚开始使用bash脚本,我试图让一个简单的管道工作:
#!/bin/sh
mkfifo apipe
cat apipe | nc -l $1 | /home/matt/testprogram > apipe
鉴于端口号有效并且程序按我的意愿运行,可能会使这个脚本陷入困境?
我的程序应该打印一些文本以及使用fgets接收一些用户输入。当我运行我的shell脚本时,我希望它就像我正常运行程序一样。当我运行它时,我只是让它消隐而没有做任何事情,我必须用ctrl + C打破它。
我在终端输入类似的内容:
sh testnc.sh 2342
感谢您的任何建议
答案 0 :(得分:2)
您正在使用NC错误。 nc -l $1
正在侦听该端口上的外部连接。所以你可以运行这样的东西:
主持人1:
nc -l <port> | /home/matt/testprogram
主持人2:
cat files | nc <host1> <port>
但你正在做的用法毫无意义。