Запишите в поток сообщений об ошибках в цикле с условием продолжения

Как ученик Вы хотите посмотреть на что-то, к чему можно корректироваться легко и также дать Вам тот же пользовательский опыт, как Вы вошли бы в окна, я предложу, чтобы Вы установили OpenSUSE 11.x или 10.x, это - аккуратная ОС, и он не должен давать Вам слишком много знающего досконально горя.

1
07.09.2012, 16:19
2 ответа

Ваш синтаксис является неправильным: это должно быть >&2 нет 2>.

5
27.01.2020, 23:17

Ваш пример не работает, потому что в цикле Вы перенаправляете stderr с 2>. И затем когда Вы пытаетесь перенаправить его снова вне цикла нет ничего в потоке для перенаправления.

Казалось бы, что это - то, что Вы на самом деле хотели сделать:

cat infile | while read line; do
    echo >&2 'log ' $line
    echo $line
done > outfile 2> errfile

Это должно перенаправить все ошибки из цикла с условием продолжения как ожидалось. Если Вы уже не перенаправили ошибки в цикле как пример в Вашем вопросе.

0
27.01.2020, 23:17

Теги

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