Обзор команды 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