Дотримуйтесь кількох файлів журналу на одному виході


60

Чи є простий спосіб зробити щось на кшталт, tail -f mylogfileале не відображати зміни більш ніж одного файлу (можливо, з ім'ям файлу додається як префікс до кожного рядка)? А може, інструмент GUI? Я запускаю Debian.



Дякую за цю пораду. Це дійсно корисний інструмент. Він також може усікати файли, очищати екран одним ярликом тощо.
stofl

Відповіді:


92

Ви пробували tail -f file1 file2? Схоже, ви робите саме те, що хочете, принаймні на моїй машині FreeBSD. Можливо, те, tailщо поставляється із системою Debian, може зробити це теж?


2
Так. Це працює! Дякую. Я ніколи не очікував, що це буде так легко.
stofl

11
Зазвичай я використовую -Fнатомість, оскільки під час перезавантаження серверних програм може бути врізана кількість файлів.
Арседж

10
Мій новий улюблений параметр комбо tail -qF *.log: -qприховати імена файлів і -F, як Арседж вказував, дозволяти tailслідкувати за іменем, а не за дескриптором, тому що мої файли журналів обертаються.
Денис Дрешер

Підтверджено також на Ubuntu 16.04 LTS
Рікардо

Для цього є межа. У мене є папка з файлами журналів PID для працівника, який розпочинає роботу з кожної нової роботи в черзі (Так багато PID). Якщо я tail -f /var/log/folder/*повертає помилку "не в змозі виконати / usr / bin / tail: Аргумент занадто довгий"
мерехтіння

3

Чомусь відповіді tail -f file1 file2не були зовсім такими, що я мав на увазі.

Я хочу знати, що сталося в декількох журналах, нещодавно «локально», незалежно від глобального хронологічного порядку.

Для цього я використав щось подібне watch -n1 tail -n10 file1 file2


1

Для вправи я написав невелику утиліту вузла, яка робить те саме, що і хвіст -f f1 f2 f3

Комплекс:

https://www.npmjs.com/package/splex

Основне "оновлення" полягає в тому, що рядки мають кольорове кодування на ім'я файлу, і що у вас може бути інтерфейс, подібний до таблиці.

Ще одна поліпшення, фактично головна причина, по якій я писав це, - це можливість мати .splexrc.json файли в різних папках, тому замість того, щоб вводити tail -f f1 f2 f3одну папку, а потім інші файли, в іншу, ви можете писати .splexrc.json файл у корені ваш проект і просто введіть splexбез аргументів списку файлів, і він автоматично передає відповідні журнали, перелічені у конфігураційному файлі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.