Я пытаюсь записать вывод команды к файлу журнала с помощью grep:
./exeFile dir1/file.conf | grep textError > logTest.txt &
Но это ничего не пишет в файл журнала.
Если я использую ./exeFile dir1/file.conf > logTest.txt &
вместо вышеупомянутой команды вывод будет записан в файл журнала без любых проблем.
Что я делаю неправильно?
Как Вы знаете, когда Вы используете > logTest.txt
, Вы просто перенаправляете stdout к logTest.txt, таким образом, Вы ничего не видите.
Для наблюдения, какова проблема, выполняет grep, не перенаправляя stdout в файл:
./exeFile dir1/file.conf | grep textError
Видят, есть ли у Вас вывод для перенаправления во-первых, возможно, grep не имеет никаких результатов вообще.
Поэтому сначала удостоверяются, что Ваш grep работает, затем перенаправьте вывод.
В Вашей второй команде, Вы перенаправляете весь вывод, и Вы ничего не фильтруете, вот почему вторые работы команды.