问题描述
|
我希望我的代码能够处理来自管道的输出。
例如ls -l |我的代码
在Linux下如何实现?
解决方法
只需从stdin中读取,例如使用scanf()。
, Linux / Unix中的管道会将第一个程序的输出传输到第二个程序的标准输入。您如何访问标准输入取决于您使用的语言。
, 当您在外壳程序中输入\“ ls -l | mycode \”时,外壳程序本身(例如
bash
,zsh
)会用管道来解决所有问题。它仅提供标准输入上从ls -l
到mycode
的输出。同样,您在标准输出或错误上编写的任何内容都可以由Shell重定向或通过管道传递到其他进程或文件。究竟如何读写这些文件取决于语言。