Отображение & ldquo; прокрутки & rdquo; журнальный файл

Через командную строку у меня есть файл журнала, который я бы хотел отслеживать.

То, что я хочу, это иметь, в основном, tail, который обновляется при обновлении журнала, делая прокрутку текста вверх при добавлении новых строк в файл журнала.

Есть ли что-нибудь, что делает это без необходимости писать какой-то код?

28
задан 8 October 2011 в 20:52

5 ответов

tail имеет опцию -f:

Со страницы man:

-f, --follow [= { name | descriptor}] выводит добавленные данные по мере роста файла; -f, --follow и --follow = дескриптор эквивалентны

Таким образом, если вы введете:

tail -f [path_and_name_of_logfile] - вы увидите вывод в терминале как Сам файл журнала добавляется.

N.B. [path_and_name_of_logfile] является параметром, поэтому приведем пример:

tail -f /var/log/messages

Если вы объедините с опцией -n [number_of_lines], вы можете начать вывод с последнего [number_of_lines] в file - например

tail -n 10 -f /var/log/Xorg.0.log

enter image description here


Некоторые программы периодически меняют свой файл журнала, перемещая старый в новый имя (например, log.0) и начало заново.

N.B. logrotate делает это для регистрации файлов других программ, которые сами этого не делают.

tail -f будет продолжать следовать за старым файлом после его переименования.

tail -F будет следовать за файлом по имени, поэтому будет переключаться, чтобы следовать за новым файлом.

0
ответ дан 8 October 2011 в 20:52

В то время как tail конечно, обычный способ сделать это, он должен быть отмечен это less имеет ту же функцию и иногда более полезен.

Если Вы открыли файл с less затем можно нажать, Shift + F, чтобы иметь его следуют за файлом (т.е. это отобразит новые строки, так же, как tail -f делает). Можно выйти из этого режима с Ctrl + C

Можно также запустить less с +F опция, в этом случае это запустится в том режиме. Вообще говоря, + может использоваться для предоставления "команд клавиатуры" less который это выполнит после запуска.

Используя less поскольку это имеет преимущество, что можно легко искать файл или просмотреть другие области, если потребность возникает. Я часто делал это с файлами журнала, например.

18
ответ дан 8 October 2011 в 20:52

tail -f something.log

делает то, что ты хочешь?

0
ответ дан 8 October 2011 в 20:52

Я думаю, что ccze - правильный инструмент для вас.

Это то же самое, что и раскрашивание. Вы можете наблюдать за прокруткой журнала вниз, но его легче читать, потому что строки печатаются цветами (ошибки красного цвета и т. Д.). Вы можете быстро попробовать это с чем-то вроде этого:

tail -f /var/log/syslog | ccze
0
ответ дан 8 October 2011 в 20:52

tail имеет две реализации для отслеживания и вывода данных, которые добавляются в файл.

  • . Далее следует дескриптор файла. 1114]

    С параметром -f, --follow и --follow=descriptor, tail следует за дескриптором файла. Этот метод позволяет файлу следовать за переименованием, но отслеживание останавливается, когда файл поворачивается (новый файл создается с другим файловым дескриптором).

    При просмотре следующих файлов, которые вращаются, используйте параметр --follow=name или -F, который равен --follow=name --retry. Таким образом tail будет периодически открывать файл, чтобы преодолеть возможное вращение.

0
ответ дан 8 October 2011 в 20:52

Другие вопросы по тегам:

Похожие вопросы: