Я запускаю tcsh/csh shell на своей машине. В последнее время я понял, что перенаправление файлов stderr не работает.методы перенаправления stderr
Пожалуйста, найдите терминальные журналы, как показано ниже:
>echo b c >>& log
>cat log
b c
>echo $a b c >>& log
a: Undefined variable.
>cat log
b c
Я никогда не сталкивался с такой проблемой, поэтому не знает, как для отладки или устранение неполадок. Прошу совета!
Измененный способ перенаправления использует тройник. Пока я использую> & или >> &, я полностью блокирую любой вывод, который будет отображаться на терминале. Есть ли способ, которым я могу сделать оба, то есть: для каждого оператора
a) Прямой stdout + stderr в файл.
б) дисплей стандартный вывод + STDERR на терминале
мне нужно, чтобы проверить, действительно ли я могу использовать что-то вроде этого (ниже), чтобы удовлетворить мои требования
>csh ./script_name | tee -a log
В моем случае это только направляет Stdout войти файл и блоки stderr.
Я не уверен, как это проверить. Из того, что я понимаю, даже если интерпретация выполняется для $ a, он не должен останавливать выполнение, но должен направлять stdout + stderr в файл журнала. – Ani
@ Ани, вы можете проверить это, как и я, путем принудительного перенаправления сначала _then_ делать расширение, a la '(echo $ a) >> & log'. Я обновил ответ более подробно. – paxdiablo
Спасибо за ответ, что делает его более понятным для меня, как выполняются инструкции. – Ani