1

我正在编写一个程序来处理另一个程序的输出。

假设我的测试程序被调用test,并且我想处理名为file.

test,我正在阅读stdin如下文件:

FILE *fp;
fp = fopen("/dev/stdin", "r");

当我在命令行中运行以下命令时,这有效:./file | ./test.

但我假设我想使用 I/O 重定向,所以:./file > ./test. 我如何在 C 中处理它?

4

1 回答 1

3

I/O 重定向使用>不适用于将一个程序的输出通过管道传输到另一个程序。它将一个程序的输出重定向到一个文件中。命令

./file > ./test

运行程序file并创建一个文件test,其中包含来自file. 它不运行一个名为 的程序test,事实上,如果它存在,它会覆盖一个程序。

于 2012-04-08T20:37:27.510 回答