我正在用c代码做一些文件IO。我在我的文件中有一个特定的模式。我可以通过shell命令cat abc.txt | grep abc | wc -l
来验证。当我使用System()
执行相同的命令时,它会给出正确的输出,但我不知道如何将其输出转换为变量并将其与我的c代码本身进行比较。如何读取系统输出('ls')?
我试着看看建议使用WEXITSTATUS()
的手册页。这实际上会返回执行状态而不是输出。
F1!
我正在用c代码做一些文件IO。我在我的文件中有一个特定的模式。我可以通过shell命令cat abc.txt | grep abc | wc -l
来验证。当我使用System()
执行相同的命令时,它会给出正确的输出,但我不知道如何将其输出转换为变量并将其与我的c代码本身进行比较。如何读取系统输出('ls')?
我试着看看建议使用WEXITSTATUS()
的手册页。这实际上会返回执行状态而不是输出。
F1!
什么grep和wc正在做的是读取STDIN文件句柄作为管道的一部分|运营商。
请注意,不要分析'ls'的输出。并且请注意,比通过'system()'调用shell的文件IO有更好的选择。 – Stephen 2010-07-12 19:25:19
“F1”是什么意思? – bk1e 2010-07-13 06:23:55