有没有一种实用且简单的方法来捕获通过命名管道的数据?我尝试过wireshark,但它只接受特定的数据格式。我也尝试过猫,但结果好坏参半。
谢谢
答案1
我将设置两个命名管道并将它们连接到
tee -a pipe.log < pipe1 > pipe2
然后让第一个应用程序写入pipe1
,第二个应用程序从中读取pipe2
。
或者你可以将它们连接到
tee pipe2 < pipe1
将数据通过管道传输到您的标准输出。
答案2
没关系,我发现了如何使用 shell 脚本读取数据,如下所述:
http://www.linuxjournal.com/content/using-named-pipes-fifos-bash
while true
do
if read line <$pipe; then
if [[ "$line" == 'quit' ]]; then
break
fi
echo $line
fi
done