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

我怎么能从我的c + +程序给Linux控制台(Ubuntu)的命令,并将一个值,我的命令告诉,stringvariables? 请给我一个例子,在这个程序中给出简单的命令“uname -a”来控制和写入结果。

对不起,我的英文不好,我知道的很less。 如果有人会用俄语写他的答案(如果允许的话),我会非常高兴。 我在俄罗斯资源寻找我的问题的答案,但没有发现,你是我的最后希望。

你需要的命令是popen 。 你可以通过在你的shell中输入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); } 

上面的代码没有任何错误处理; 阅读并理解完整的手册页 ( rus )后,应该插入适当的检查。

寻找解释popen(3)库例程的俄语资源。 您将需要使用popen来启动命令,然后读取管道以获取输出。