如何实现shell输出作为C语言的输入?

时间:2018-03-27 05:14:34

标签: c shell unix

例如,猜猜我有一个已编译的c程序,名为'binaryOutput'。 在Unix环境中,[root @ blablabla~] ./binaryOutput会打印出这样的结果 [0] [1] [0] [1] [1]

我想将这些结果用作另一个c文件的输入。

在C语言中,我可以运行该文件。

system("./binaryOutput") ;

在代码之后,我想将数字添加为数组的输入。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

popen示例。您可以获取命令的输出。

#include <stdio.h>

int main(void)
{
  FILE *fp=NULL;
  char line[1024];
  if ( (fp=popen("ls", "r"))==NULL )
  {
    return -1;
  }
  while( fgets(line, 1023, fp)!=NULL )
  {
    printf("read from popen:%s", line);
  }
  pclose(fp);
  return 0;
}