Перенаправление вывода

Как записать в файл лога только ошибки?
Вероятно вы уже встречали не совсем очевидные знаки типа 2>&1
Давайте разберемся что это и как этим пользоваться.

Что бы понимать какие вообще есть потоки, приведу следующую таблицу:

0 stdin Стандартный ввод
1 stdout Стандартный вывод
2 stderr Стандартный вывод ошибок
В Powershell существует больше потоков

Для перенаправления потока
используется комбинация знаков «больше» и амперсанд: >&

Пример:

Варианты перенаправления

Перенаправление в файл

Для перенаправления в файл не нужно указывать знак & — он используется только при перенаправлении одного потока в другой

Перенаправление потока в другой поток

Таким образом мы перенаправляем более узкий набор данных(поток ошибок) в более общий(стандартный поток вывода), что бы направить в файл всю имеющуюся информацию, которую в последствии можно использовать для отладки.

Использование конструкции 1>&2  не предусмотрено, так как не имеет смысла.

Перенаправление с добавлением

Одинарный знак «>» заменяется на двойной и позволяет записывать вывод потока в конец файла

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *