Перенаправление внутри вызова execvp () не работает

Я реализую небольшую программу, которая выполняет данную команду, используя execvp (). Он отлично работает, когда не используется перенаправление, но когда я запускаю такую команду, как:

cat file1.txt > redirected.txt

cat выводит следующие сообщения об ошибках и дает сбой:

cat: >: No such file or directory
cat: redirected.txt: No such file or directory

Я немного покопался и начинаю думать, что, возможно, execvp () не может делать перенаправление, потому что он не запускается в оболочке. Означает ли это, что мне придется вручную выбирать, когда происходит перенаправление, и использовать каналы в моем коде fork / exec, чтобы обойти это ограничение? Есть ли лучший способ, чем использовать execvp ()?

Спасибо!

Ответы на вопрос(3)

Ваш ответ на вопрос