Команда Tail в Linux
Команда Tail в Linux
Linux Tail Command
В этом уроке мы покажем вам, как использовать хвостовую команду Linux, на практических примерах и подробных объяснениях наиболее распространенных опций хвоста.

Команда tail отображает последнюю часть (по умолчанию 10 строк) одного или нескольких файлов или переданных данных. Он также может быть использован для мониторинга изменений файла в режиме реального времени.
Одним из наиболее распространенных применений команды tail является просмотр и анализ журналов и других файлов, которые со временем меняются, обычно в сочетании с другими инструментами, такими как grep .
Синтаксис хвостовой команды
Прежде чем перейти к использованию команды tail, давайте начнем с рассмотрения основного синтаксиса.
Выражения команды tail принимают следующую форму:
tail [OPTION]... [FILE]...
OPTION
- хвостовые варианты . Мы рассмотрим наиболее распространенные варианты в следующих разделах.FILE
- Ноль или более имен входных файлов. Если FILE не указан или если FILE установлен-
, tail будет читать стандартный ввод.
Как использовать команду Tail
В простейшем виде, когда используется без какой-либо опции, команда tail отображает последние 10 строк.
tail filename.txt
Как отобразить определенное количество строк
Используйте опцию -n
( --lines
), чтобы указать количество отображаемых строк:
tail -n <NUMBER> filename.txt
Вы также можете опустить букву n
и использовать только дефис ( -
) и число (без пробелов между ними).
Для отображения последних 50 строк имени файла filename.txt
вы должны использовать:
tail -n 50 filename.txt
В следующем примере будет показан тот же результат, что и в приведенных выше командах:
tail -50 filename.txt
Как отобразить определенное количество байтов
Для отображения определенного количества байтов используйте опцию -c
( --bytes
).
tail -c <NUMBER> filename.txt
Например, для отображения последних 500 байтов данных из названного файла filename.txt
вы должны использовать:
tail -c 500 filename.txt
Вы также можете использовать суффикс множителя после числа, чтобы указать количество отображаемых байтов. b
умножает его на 512, kB
умножает на 1000, K
умножает на 1024, MB
умножает на 1000000, M
умножает на 1048576 и т. д.
Следующая команда отобразит последние два килобайта (2048) файла filename.txt
:
tail -c 2k filename.txt
Как посмотреть файл на предмет изменений
Чтобы отслеживать файл на наличие изменений, используйте параметр -f
( --follow
):
tail -f filename.txt
Эта опция особенно полезна для мониторинга файлов журнала. Например, чтобы отобразить последние 10 строк /var/log/nginx/error.log
файла и отслеживать файл на наличие обновлений, вы будете использовать:
tail -f /var/log/nginx/error.log
Чтобы прервать команду tail во время просмотра файла, нажмите Ctrl+C
.
Чтобы продолжить мониторинг файла при его воссоздании, используйте -F
опцию.
tail -F filename.txt
Эта опция полезна в ситуациях, когда команда tail следит за вращающимся файлом журнала. При использовании с -F
опцией команда tail снова откроет файл, как только он снова станет доступным.
Как отобразить несколько файлов
Если несколько файлов предоставлены в качестве входных данных для команды tail, она будет отображать последние десять строк из каждого файла.
tail filename1.txt filename2.txt
Вы можете использовать те же параметры, что и при отображении одного файла.
Этот пример показывает последние 20 строк файлов filename1.txt
и filename2.txt
:
tail -n 20 filename1.txt filename2.txt
Как использовать хвост с другими командами
Команда tail может использоваться в сочетании с другими командами, перенаправляя стандартный вывод из / в другие утилиты, используя каналы.
Например, чтобы отслеживать файл журнала доступа apache и отображать только те строки, которые содержат IP-адрес, который 192.168.42.12
вы используете:
tail -f /var/log/apache2/access.log | grep 192.168.42.12
Следующая ps
команда отобразит десятку запущенных процессов, отсортированных по загрузке процессора:
ps aux | sort -nk +3 | tail -5
Вывод
К настоящему времени вы должны хорошо понимать, как использовать хвостовую команду Linux. Он дополняет команду head, которая печатает первые строки файла на терминал.
Комментарии
Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.