Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从C程序调用unix命令_C_Unix_Echo - Fatal编程技术网

如何从C程序调用unix命令

如何从C程序调用unix命令,c,unix,echo,C,Unix,Echo,可能重复: 我想在C程序中调用echo,然后将其输出重定向到一个文件。但我不知道如何在C程序中调用unix命令。非常感谢您的帮助 谢谢, Aashish您可以使用以下功能执行此操作: #include <stdlib.h> int main() { system("echo 'words' > file"); return 0; } 或者使用fopen、printf、fclose #include <stdlib.h> int main() {

可能重复:

我想在C程序中调用echo,然后将其输出重定向到一个文件。但我不知道如何在C程序中调用unix命令。非常感谢您的帮助

谢谢, Aashish

您可以使用以下功能执行此操作:

#include <stdlib.h>

int main() {
  system("echo 'words' > file");
  return 0;
}
或者使用fopen、printf、fclose

#include <stdlib.h>

int main() {
    system("echo test > filename");
    return 0;
}
这是一个简单的方法。如果您希望对流程进行更多控制,那么您应该进行调查

但是,您可以使用C stdlib文件函数编写简单的文件。这比生成一个新进程要轻量级得多。

使用系统在C中执行UNIX命令的另一种方法是

这完全取决于你想用什么方式使用它们。如果需要用户输入,则可能需要使用execlp/。否则,该系统是让UNIX与C程序一起工作的一种快速、简单的方法

对于重定向,可以使用。
它将帮助您查看要重定向到打开的文件的数据。对于系统,您只需设置它,但没有实际选项来设置它或以您想要的方式优化它。

如果您特别想执行此程序以获取其输出,您宁愿选择而不是系统。

为什么要调用echo??那么*printf函数呢?例如,FILE*f=fopenfile,w;fprintff,单词;fclosef;