这与将输入通过stdin传递给在端口上运行的二进制文件有关。我可以使用netcat运行二进制文件,如下所示:
nc $server $port
现在要通过一行,我可以得到以下工作:
python -c 'print "AAAA"' | nc $server $port
但是,我无法找到两次写入stdin的方法。
我的程序有如下所示的流程:
第一个Feed取决于服务器的某些响应。
line 5: read(stdin,&buffer,20); // This entry is based on some question from the server and need to be determined dynamically
第二个feed需要作为python输出传递,因为它还需要包含十六进制字符。
line 8: read(stdin,&buffer2,20); // This feed is static.
任何帮助都将受到高度赞赏。
谢谢!
答案 0 :(得分:0)
我不完全确定我理解这个问题,但您可以在子shell中运行多个命令并将所有命令的输出传递给另一个进程:
$ (python -c 'print "AAAA"'; python -c 'print "BBBB"') | nc $server $port