
Я использую tail -f
оболочку Linux для просмотра файлов журналов, так как мне нравится, как она автоматически обновляется с поступлением текста: мне нравится видеть, как прокручивается новая информация.
Однако мне также нравится функция поиска less
, которая недоступна в tail
(или доступна?). Существует ли решение "лучшее из обоих миров"?
Если бы существовал режим, который я мог бы включить и less
который бы автоматически обновлял его при поступлении текста, это было бы идеально.
решение1
Вы можете запустить less +F filename
, чтобы просмотреть файл в tail -f
моде.
Вы можете нажать Shift+F во время просмотра файла вменьшедля перехода в режим пересылки и Ctrl+C для выхода из этого режима.
решение2
От less -help
:
F Вперед навсегда; как «tail -f».
так что, по-видимому, less +F /var/log/messages
решение3
Ответ Николая, вероятно, наиболее близок к тому, что вы спрашивали, но вы не думали об использовании tmux?
В своих сеансах tmux я предпочитаю tail -f
вести логи, а затем просто входить в режим копирования tmux для поиска вверх и вниз, точно так же, как и в less, а затем выходить из режима копирования, чтобы найти tail -f
все еще идущий.
Создайте сеанс tmux:
tmux
Просмотрите файл журнала и последние 1000 строк для начала:
tail -f -n1000 /var/log/syslog
Войдите в режим копирования, используя клавишу-заполнитель и левую скобку:
[ctrl+leader] + [
по умолчанию ключом-лидером tmux является буква b, например:
[ctrl+b] [
Теперь вы можете прокручивать и выполнять поиск вверх и вниз, как в less.
Выйдите из режима копирования, чтобы вернуться к своему tail -f
:
[crtl+c]
Бонусный материал: Откройте второе окно терминала:
[ctrl+leader] + c
Переключение между двумя подсказками терминала:
[ctrl+leader] + l
решение4
Вы могли бы просто сделать
tailf logname.log | grep "query-here"