我正在开发一个 C 程序,它获取命令行参数并向它们附加文件扩展名。
执行将是这样的:
>myprogram file1 file2
并将执行另一个程序,该程序将用作参数file1.txt
和file2.txt
. 我尝试这样做会添加扩展名并运行一个命令(s1 是路径,s2argv[i]
在循环中:
int getfile(char *s1, char *s2){
char *str2 = malloc(sizeof(s2)+3);
strcpy(str2,s2);
strcat(str2,".txt");
execl(s1,"program",str2,NULL);
exit(0);
}
该函数将为一个文件(>program file1.txt
和>program file2.txt
)运行程序,但我需要找到一种以这种方式运行它的方法(>program file1.txt file2.txt
)。
我尝试直接修改argv,但没有成功。
有什么建议吗?