Linuxlab

Команда tee в Linux: и в файл, и на экран

Обновлено 3 июля 2026 г.

tee пишет то, что идёт через конвейер, сразу и в файл, и на экран.

Синтаксис

... | tee файл

Частые случаи

ls -l | tee out.txt           # показать и сохранить
make 2>&1 | tee build.log     # видеть сборку и записать лог
ls | tee a.txt b.txt          # сразу в несколько файлов
echo on | sudo tee /sys/file  # записать в файл от root в конвейере
ls | tee -a out.txt           # -a дописать, а не перезаписать

Как это устроено: тройник в конвейере

Имя tee - от сантехнического тройника: поток приходит и расходится в две стороны. Без tee приходится выбирать: либо > файл (вывод уходит в файл, на экране пусто), либо смотреть на экран (ничего не сохранится). tee делает оба сразу. Частый приём - sudo tee: если написать sudo команда > /файл, перенаправление выполнит сама оболочка БЕЗ прав root, и ты получишь ошибку доступа; а команда | sudo tee /файл пишет в файл уже от root. Флаг -a дописывает в конец, как >>.

В книге

Подробно эта тема разобрана в главе Потоки, перенаправление, конвейеры.

См. также

Перенаправление > и >>, Конвейеры и фильтры.

Попробовать

Открой песочницу: настоящий одноразовый терминал Linux в браузере. Выполни команды выше своими руками - контейнер удаляется, когда ты уходишь.