Команда, вызывающая отказ,
gpc xxx.pas > error.txt
Поскольку я хочу загрузить сообщение об ошибке на stackflow.com, но это поворачивается, там ничто в error.txt, кроме того, gpc все еще кричал к stdout, и распечатайте сообщение об ошибке одно экран?
Итак, почему перенаправление оболочки перестало бы работать?
спасибо.
STDERR (стандартная погрешность) в UNIX и подобных UNIX системах перенаправляется с помощью 2>
вместо единственной двойной угловой скобки (>
).
пример:
gpc xxx.pas 2> error.txt
Это позволит стандартному выводу (STDOUT) быть распечатанным к терминалу как нормальный, но отправит все сообщения об ошибках в файл, error.txt
.
Если Вы хотите собрать и STDOUT и STDERR в том же файле, использовать 2>&1
: это говорит оболочке копировать STDERR (2
) к STDOUT (1
). Теперь перенаправление STDOUT получает оба потока:
gpc xxx.pas 2>&1 > stdout-and-stderr.txt