как перенаправить вывод в файл журнала без тройника? нормальное перенаправление не работает

Почему бы не использовать тройник? потому что рендеринг вывода терминала замедляет работу приложения.

по какой-то причине это не работает:

application 2>&1 >"$logFile"

выход продолжает поступать на терминал.

1
задан 17 July 2013 в 06:47

1 ответ

Вы перенаправили stderr на stdout (терминал), затем вы перенаправили stdout в файл. В заключение, вы не перенаправили stderr в файл:

  1. stderr -> stdout, stderr идет в терминал.
  2. stdout -> $logfile, stdout переходит к $logfile.

Попробуйте использовать следующее:

application >"$logfile" 2>&1

Обратите внимание, порядок имеет значение:

  1. stdout -> $logfile, stdout переходит к $logfile.
  2. stderr -> stdout -> $logfile, stderr переходит к stdout, который совпадает с $logfile.
0
ответ дан 17 July 2013 в 06:47

Другие вопросы по тегам:

Похожие вопросы: