我的情况是:我正在通过管道将输入从我的程序中的一个位置重定向到另一个位置。但是,它似乎没有正常工作,所以我想监视通过管道的内容。
目前,我正在使用dup2()来简单地覆盖管道中的stdin和stdout。
如何监控管道之间的情况?
答案 0 :(得分:4)
当我在bash脚本中调试管道时,我经常会使用tee命令来捕获正在经历的内容而不会中断流程。
有一个相应的tee system call,看起来它可能对调试C代码中的管道很有用,但我从未尝试过。
答案 1 :(得分:1)
一个有用的工具是Pipe Viewer。我不认为它直接用于查看通过管道的实际数据,但可以让您监控进度和吞吐量。我认为timday的答案更符合您的要求。
答案 2 :(得分:1)