您好,我目前正在尝试在运行程序时打印命令行的某个部分。我目前运行我的程序如下
zcat gcc | sim
我想要完成的是将命令行的“gcc”部分打印到单独的文件中。有什么办法可以做到这一点。谢谢您的帮助
我忘了提到这是在 c 而不是 C++
您好,我目前正在尝试在运行程序时打印命令行的某个部分。我目前运行我的程序如下
zcat gcc | sim
我想要完成的是将命令行的“gcc”部分打印到单独的文件中。有什么办法可以做到这一点。谢谢您的帮助
我忘了提到这是在 c 而不是 C++
您正在将zcat
(通过管道)的输出传递给您的程序,它不知道传递给zcat
. 您可以将其作为输入流的一部分显式传递,
(echo 'zcat gcc'; zcat gcc ) | sim
但这是一个黑客。如果您打算仅以这种方式运行程序,那可能没问题。
“sim”程序只知道它有来自标准输入的数据。它不知道是什么将数据传递给标准输入——它可能是另一个程序,或者重定向的输入,或者来自设备。
从'sim' POV,只有来自标准输入的数据。
如果您可以保证始终通过管道从另一个进程接收数据,则可以开始寻找与“sim”进程匹配的进程标头,然后从相关进程中提取进程信息。但是,我怀疑这超出了您的意愿。