C语言中的Linux控制台命令(gcc编译器)

  

如何从我的C程序向Linux控制台(Ubuntu)提供命令,并为字符串变量分配一个值,该值由我的命令告知?请给我一个例子,其中程序给出简单的命令“ uname -a”来控制台并写入结果.

对不起,我的英语不好,我知道的很少.如果有人用俄语(如果允许)写他的答案,我会很高兴.我一直在用俄语资源寻找问题的答案,但一无所获,您是我的最后希望.

解决方法:

您需要的命令是popen.您可以通过在外壳中输入man popen来获取有关此信息;如果您的Linux发行版运行俄语翻译,则应以俄语显示有关它的信息.

基本上,popen只是打开一个“文件”(流),您可以像处理常规文件一样使用它.这是一个如何使用它的示例:

#include <stdio.h>
int main()
{
  FILE *f;
  char stuff[100];
  f = popen("uname -a", "r");
  fgets(stuff, 100, f);
  printf("%s", stuff);
  pclose(f);
}

上面的代码没有任何错误处理.阅读并理解the complete manual page(rus)后,您应该插入适当的检查.

相关文章