【发布时间】:2017-12-27 16:38:11
【问题描述】:
某些实用程序无法输出到标准输出。
例子
util out.txt
它有效。但有时我想将输出传递给其他程序,例如:
util out.txt | grep test
linux中是否存在任何神奇的“stdout”文件,所以当我替换上面的out.txt时,它将数据重定向到stdout管道?
注意:我知道util out.txt && cat out.txt | grep test,所以请不要发布这样的答案。
【问题讨论】:
-
您的实用程序是否符合 POSIX 实用程序语法准则?如果是这样,它将根据位置识别
-表示标准输入或标准输出。 -
我相信this在这里得到了回答。
-
为什么您的程序本身也不支持标准输出,这一点很重要。正如 Basile 所说,一些程序在编写它们时会在其输出文件中跳转,而不是进行一次从前到后的传递。在这种情况下,直接将数据流式传输到标准输出而不事先将其缓冲到文件中实际上是不可能的。