我尝试使用execvp对文件进行排序,这是我的代码。
char *argv1[]={ "sh", "-c", "sort input.txt > output.txt", NULL };
问题是这个命令对输出文件中的内容进行排序,但我只想在终端输出上进行排序。
答案 0 :(得分:0)
获取终端输出而不是文件使用:
system{ "sort input.txt" );
不要使用像execvp()
这样昂贵的东西。以上几行完成了整个工作
答案 1 :(得分:0)
您可以参考Using cat and execvp
的示例替换为以下代码。
char *cmd1[] = { "sort", "input.txt", 0 };
char *cmd2[] = { "tee", "output.txt", 0 };