外壳追加重定向替换现有文本



对于我们的学校作业,我们必须实现输入/输出重定向。我设法获得了输入和输出重定向工作,但我遇到了追加重定向的问题。

我正在使用测试文件.txt:

test line 1
test line 2

当用户键入 ls>> testfile.txt 时,我希望将 ls 的输出添加到测试文件中。此时,测试线被ls程序的输出所取代。

我用于打开文件的权限如下:

    file = open(redirect.getNewFile().c_str(), O_WRONLY | O_TRUNC, S_IRWXU);

有谁知道哪里出了问题?

谢谢转发。

将O_TRUNC替换为O_APPEND。

最新更新