Главная > Обработка текста и поиск > tee

Полное руководство по команде tee: одновременная запись в стандартный вывод и файл

Команда `tee`, подобно Т-образному каналу, отправляет данные, поступающие со стандартного ввода, в стандартный вывод (экран) и одновременно сохраняет их в одном или нескольких файлах. Это очень полезно для просмотра промежуточных результатов в реальном времени в сложных конвейерах и одновременного сохранения их в файлах журналов.

Обзор команды tee

`tee` в основном используется в UNIX-подобных системах вместе с конвейером (|) и значительно помогает визуально отслеживать и записывать потоки данных, одновременно выводя результаты команды на экран и в файл. Это особенно полезно при журналировании результатов выполнения скриптов или отслеживании процесса выполнения команд.

Принцип работы tee

Он копирует данные, поступающие через конвейер, отправляя одну копию в стандартный вывод, а другую — в указанный файл. Название `tee` происходит от того, что он работает как Т-образная труба, разделяющая воду на два потока.

Основные опции

Команда `tee` очень проста в использовании и позволяет контролировать способ сохранения файлов с помощью нескольких опций.

1. Режим записи файла

2. Обработка ошибок

Сгенерированная команда:

Комбинируйте команды.

Описание:

`tee` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Часто используемые примеры

Узнайте, как управлять данными в различных ситуациях с помощью команды `tee`.

Одновременный вывод результатов команды ls на экран и в файл

ls -l | tee file_list.txt

Отображает список файлов в текущем каталоге на экране и одновременно сохраняет его содержимое в файл `file_list.txt`.

Добавление содержимого в файл

echo "--- 새로운 내용 ---" | tee -a file_list.txt

Добавляет новое содержимое в конец файла `file_list.txt`. В отличие от символа `>` (перенаправления), содержимое также выводится на экран.

Сохранение в несколько файлов одновременно

echo "두 파일에 동시에 저장" | tee file1.txt file2.txt

Сохраняет результаты команды одновременно в два файла: `file1.txt` и `file2.txt`. Можно разделять запятыми или пробелами. Запятые являются правильным способом использования.

Запись в файл с правами администратора

echo "some text" | sudo tee -a /etc/some_file.conf

При использовании конвейера перенаправление `>` может не унаследовать права `sudo` и завершиться неудачей. Использование `tee` позволяет решить эту проблему и добавить содержимое в файл с правами администратора.

Установка пакета

`tee` по умолчанию включена в большинство систем Linux/Unix и не требует отдельной установки. Если она недоступна в определенной среде, вы можете установить пакет основных утилит.

Debian/Ubuntu

sudo apt install coreutils

Проверка и установка пакета coreutils

CentOS/RHEL/Fedora

sudo yum install coreutils

Проверка и установка пакета coreutils


Связанные команды

Функционально схожие или часто используемые команды.


Те же команды в категории