Глава 7
Потоки, перенаправление, конвейеры
Обновлено 3 июля 2026 г.
У каждой команды есть три стандартных потока: вход (stdin, номер 0), вывод (stdout, номер 1) и поток ошибок (stderr, номер 2). По умолчанию вход это клавиатура, а вывод и ошибки идут на экран. Эти потоки можно перенаправлять.
$ echo "первая строка" > log.txt # записать вывод в файл (перезаписав его)
$ echo "вторая строка" >> log.txt # дописать в конец файла
$ ls /nonexistent 2> errors.txt # отправить ошибки в файл
$ sort < log.txt # взять вход из файлаЗнак > молча затирает файл, если он уже есть. Это частая потеря данных: одна опечатка, и нужный файл перезаписан. Защита - режим noclobber:
$ set -o noclobber # теперь > не даст перезаписать существующий файл
$ echo Закрыто
Дальше глава входит в платный курс
Ты читаешь открытую часть. Купи курс, чтобы прочитать главу целиком.