如何重定向到标准输出?

发布于 2024-07-22 19:11:56 字数 291 浏览 3 评论 0原文

我有一个用 ansi C 编写的 UNIX 应用程序,它将数据直接写入文件。 该文件由参数之一指定。

出于测试目的,我可以使用 /dev/null 作为文件名,这有效地将输出重定向为空。

我希望能够通过类似的方法将输出重定向到标准输出。 这可能吗? 如果是这样,怎么办? 我尝试了以下方法但没有成功:

a.out -f /dev/ttys000

(其中 /dev/ttys000 是由 'w' 列表指定的 tty)

I have a UNIX application written in ansi C that writes data directly to a file. This file is specified by one of the argument parameters.

For testing purposes, I can use /dev/null for the filename, which effectively redirects the output to nothing.

I would like to be able to redirect the output to stdout by a similar method. Is this possible? If so, how? I've tried the following with no luck:

a.out -f /dev/ttys000

(where /dev/ttys000 was the tty specified by a 'w' listing)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

み青杉依旧 2024-07-29 19:11:56

/dev/stdout

/dev/stdout

江城子 2024-07-29 19:11:56

您可以检测字符串“stdout”参数,然后使用 C 中的 stdout 文件句柄 (1)
http://en.wikipedia.org/wiki/File_descriptor

或使用 /dev/stdout 或/dev/fd/1

如果这是一个“内置”功能而不是用于测试的临时功能,您可能希望在 stdout 文件描述符而不是设备节点上使用 C 函数,因为 C 标准有点多恕我直言,比 POSIX 标准更耐用。

You could detect the string "stdout" argument and then use the stdout filehandle in C (1)
http://en.wikipedia.org/wiki/File_descriptor

Or use /dev/stdout or /dev/fd/1

If this is a 'built-in' feature rather than a temporary thing for testing, you might want to use the C functions on the stdout file descriptor rather than the device node as the C standard is a bit more hardy than the POSIX standard imho.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文