作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我需要编写一个 C 程序 (myprogram
) 来检查其他程序的输出。它基本上应该像这样工作:
./otherprogram | ./myprogram
但我找不到如何从 stdout
(或管道)逐行读取,然后将所有这些写入 stdout
。
最佳答案
一个程序的stdout
成为下一个程序的stdin
。只需从 stdin
读取就可以了。
当 shell 运行 myprogram
时,它会为你连接一切。
顺便说一句,这是负责的 bash 代码: http://git.savannah.gnu.org/cgit/bash.git/tree/execute_cmd.c
寻找 execute_pipeline
。不,代码并不容易理解,但它充分解释了它。
关于c - 如何从 C 中的标准输出读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24214038/
我是一名优秀的程序员,十分优秀!