我有一个用 ansi C 编写的 UNIX 应用程序,可以将数据直接写入文件。该文件由参数参数之一指定。
出于测试目的,我可以使用 /dev/null 作为文件名,这有效地将输出重定向到空。
我希望能够通过类似的方法将输出重定向到标准输出。这可能吗?如果是这样,怎么做?我试过以下没有运气:
a.out -f /dev/ttys000
(其中 /dev/ttys000 是 'w' 列表指定的 tty)
/dev/stdout
您可以检测字符串“stdout”参数,然后在 C (1) http://en.wikipedia.org/wiki/File_descriptor中使用标准输出文件句柄
或使用 /dev/stdout 或 /dev/fd/1
如果这是一个“内置”功能而不是临时测试的东西,您可能希望在 stdout 文件描述符而不是设备节点上使用 C 函数,因为 C 标准比 POSIX 标准更耐寒恕我直言.