execvp对内容进行排序

时间:2016-02-07 19:40:48

标签: c unix exec execvp

我尝试使用execvp对文件进行排序,这是我的代码。

char *argv1[]={ "sh", "-c", "sort input.txt > output.txt", NULL };

问题是这个命令对输出文件中的内容进行排序,但我只想在终端输出上进行排序。

2 个答案:

答案 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 };