[ad_1]
Почти все опытные пользователи предпочитают использовать интерфейс командной строки при взаимодействии с системами Linux. По умолчанию, все команды линукса отображать их вывод в стандартном потоке вывода. Однако иногда нам нужно сохранить этот вывод в файлах для целей отладки.
Конечно, для этого мы можем использовать оператор перенаправления. Однако одно из незначительных ограничений этого метода заключается в том, что он сохраняет выходные данные только в файле.
Чтобы преодолеть это ограничение, мы можем тройник команда который читает из стандартного потока ввода и записывает в стандартный поток вывода и файлы.
В этом практическом руководстве мы увидим различные примеры команды tee. К концу этого руководства пользователи Linux смогут использовать команду tee для удовлетворения своих потребностей в программировании.
Оглавление
Синтаксис команды tee
Синтаксис тройник Команда аналогична другим командам Linux. На высоком уровне он делится на две группы – OPTIONS
и FILES
:
$ tee [OPTIONS] [FILE1] [FILE2] [FILE3] ...
В приведенном выше синтаксисе оба OPTIONS
и FILES
являются необязательными параметрами.
1. Сохранить вывод в файл в Linux
Как обсуждалось ранее, тройник Команда отправляет вывод на стандартный вывод, а также в файл. Чтобы понять это, сначала воспользуемся эхо-команда для отображения текста в стандартном потоке вывода:
$ echo "tecmint.com"
Теперь воспользуемся тройник команда записать вывод в вывод.txt файл:
$ echo "tecmint.com" | tee output.txt
Наконец, просмотрите содержимое вывод.txt файл с помощью кошачья команда.
$ cat output.txt
В приведенном выше выводе мы видим, что тройник команда отправляет вывод в файл, а также в стандартный поток вывода.
2. Добавить вывод в файл в Linux
По умолчанию тройник команда перезаписывает выходные файлы. Однако этого можно избежать, включив режим добавления, который добавляет вывод в конец файла:
$ echo "tecmint.com" | tee -a output.txt $ cat output.txt
В этом примере мы использовали -a
возможность включить режим добавления.
3. Запись вывода в несколько файлов в Linux
Точно так же мы можем использовать тройник команда для записи вывода в несколько файлов, как показано.
$ echo "tecmint.com" | tee file-1.txt file-2.txt file-3.txt
В этом примере мы предоставили несколько файлов в качестве аргументов командной строки. Теперь воспользуемся головная команда для отображения содержимого файлов:
$ head -v file-1.txt file-2.txt file-3.txt
4. Отправить вывод одной команды в другую
Кроме того, мы также можем использовать тройник команда с оператором канала (|)
. Этот метод удобен, когда мы хотим сохранить вывод, а также передать его другой команде.
$ echo "tecmint.com" | tee example.txt | wc -c $ cat example.txt
В этом примере, во-первых, мы используем тройник Команда для записи вывода в файл. Далее мы используем команда туалета для подсчета количества символов.
5. Скрыть вывод файла в Linux
В предыдущих примерах мы использовали тройник команда для отправки вывода на стандартный вывод. Однако в некоторых редких случаях мы хотим подавить вывод. В таких случаях мы можем перенаправить вывод на /dev/ноль устройство:
$ echo "tecmint.com" | tee output.txt > /dev/null $ cat output.txt
6. Запишите вывод в привилегированный файл
Иногда нам нужно записать вывод в привилегированный файл. Однако мы не можем добиться этого, используя только тройник команда. В таких случаях мы можем использовать комбинацию судо и тройник команды.
Во-первых, давайте изменим владельца файла с помощью команда chown:
$ sudo chown root:root output.txt
Далее, давайте добавим некоторый текст к вывод.txt файл с помощью следующей команды:
$ echo "tecmint.com" | sudo tee -a output.txt
Наконец, давайте проверим, что файл был успешно обновлен.
7. Редактировать привилегированный файл в Linux
Аналогичным образом мы можем использовать комбинацию судо и тройник команды для редактирования привилегированного файла. Чтобы понять это, сначала давайте откроем привилегированный файл в Vim-редактор и добавьте к нему текст:
$ vim output.txt
Теперь воспользуемся приведенным ниже Вим команда для обновления файла:
:w !sudo tee %
8. Игнорировать сигнал прерывания (SIGINT)
В Linux мы используем Ctrl+c
комбинация клавиш для отправки ПОДПИСЬ сигнал. По умолчанию этот сигнал завершает процесс. Тем не менее, мы можем использовать -i
возможность игнорировать прерывание:
$ echo "tecmint.com" | tee -i example.txt $ cat example.txt
В этом руководстве мы узнали о тройник команду, используя некоторые практические примеры. Пользователи могут обращаться к этому руководству при работе с системами Linux из интерфейса командной строки.
Знаете ли вы какой-либо другой лучший пример тройник команда в линуксе? Сообщите нам свое мнение в комментариях ниже.