C system()对从命令行传递的文件名调用o/p

C system()对从命令行传递的文件名调用o/p,c,exec,parent-child,argv,C,Exec,Parent Child,Argv,我有下面的小代码,其中文件名是从命令行传递的。execlp()正在从其他程序调用此程序。我希望命令的o/p被system()调用到文件名中,名为argv[2]。不知道该怎么做 #include <stdio.h> int main(int argc,char *argv[]) { char c; printf("Received : %s filename: %s\n",argv[1],argv[2]); FILE *fp=fopen(argv[

我有下面的小代码,其中文件名是从命令行传递的。
execlp()
正在从其他程序调用此程序。我希望命令的o/p被
system()
调用到文件名中,名为
argv[2]
。不知道该怎么做

#include <stdio.h>

int main(int argc,char *argv[])
{
    char c;

    printf("Received : %s  filename: %s\n",argv[1],argv[2]);
        FILE *fp=fopen(argv[2],"w");

    system("./linked_list");

    printf("Here...\n");
    sleep(5);   
    //sleep(3*atoi(argv[2]));
  return 0;
}

请记住,
system
函数调用shell,因此您可以使用普通的shell重定向:

char command[64];
snprintf(command, sizeof(command), "./linked_list > %s", argv[2]);
system(command);

请记住,
system
函数调用shell,因此您可以使用普通的shell重定向:

char command[64];
snprintf(command, sizeof(command), "./linked_list > %s", argv[2]);
system(command);

使用重定向-
/linked\u list>文件
。使用重定向-
/linked\u list>文件