🐧 Шпаргалка по перенаправлению потоков в Linux, которую стоит сохранить
Работаете в терминале каждый день? Тогда понимание перенаправления потоков ввода и вывода сэкономит вам массу времени при написании скриптов и администрировании.
Что важно помнить:
🔹 0 — STDIN (стандартный ввод)
< file.txt - читать данные из файла.
🔹 1 — STDOUT (стандартный вывод)
> file.txt - записать вывод в файл.
>> file.txt - добавить в конец файла.
🔹 2 — STDERR (стандартный поток ошибок)
2> errors.log - сохранить только ошибки.
💡 Самые полезные комбинации:
command > output.log
Сохранить обычный вывод.
command 2> errors.log
Сохранить только ошибки.
command > output.log 2>&1
Объединить стандартный вывод и ошибки в один файл.
command > /dev/null 2>&1
Полностью скрыть любой вывод команды.
⚠️ Важно: порядок имеет значение!
command > /dev/null 2>&1
✅ Скрывает всё.
Но:
command 2>&1 > /dev/null
❌ Не эквивалентно - ошибки могут остаться в терминале, потому что перенаправления выполняются слева направо.
📌 Сохраняйте шпаргалку - она пригодится каждому Linux-администратору, DevOps-инженеру и разработчику, который регулярно работает с Bash.
Работаете в терминале каждый день? Тогда понимание перенаправления потоков ввода и вывода сэкономит вам массу времени при написании скриптов и администрировании.
Что важно помнить:
🔹 0 — STDIN (стандартный ввод)
< file.txt - читать данные из файла.
🔹 1 — STDOUT (стандартный вывод)
> file.txt - записать вывод в файл.
>> file.txt - добавить в конец файла.
🔹 2 — STDERR (стандартный поток ошибок)
2> errors.log - сохранить только ошибки.
💡 Самые полезные комбинации:
command > output.log
Сохранить обычный вывод.
command 2> errors.log
Сохранить только ошибки.
command > output.log 2>&1
Объединить стандартный вывод и ошибки в один файл.
command > /dev/null 2>&1
Полностью скрыть любой вывод команды.
⚠️ Важно: порядок имеет значение!
command > /dev/null 2>&1
✅ Скрывает всё.
Но:
command 2>&1 > /dev/null
❌ Не эквивалентно - ошибки могут остаться в терминале, потому что перенаправления выполняются слева направо.
📌 Сохраняйте шпаргалку - она пригодится каждому Linux-администратору, DevOps-инженеру и разработчику, который регулярно работает с Bash.