Я хочу знать, как создать файл журнала, когда строки в файлах обновляются (добавляются и удаляются)?
Как сказал Atari911 , вы можете использовать watch
вместе с cat
для этого. Используйте
watch cat <filename>
, чтобы выводить содержимое файла, заданного filename
каждые 2 секунды, на стандартный вывод. Чтобы изменить интервал обновления выходных данных до 1 секунды (вы не можете уменьшить больше 0,1), вы можете использовать
watch -n 1 cat <filename>
. Я использую cat для вывода всего файла, вы можете сделать это, но даст только последние n
строк файла, где n
равно 10 по умолчанию.
Для получения дополнительной информации см. Страницу руководства , смотрите .
Вы можете попробовать:
tail -f /var/log/syslog
Или любой интересующий вас файл. Выйдите из «хвоста» с помощью Ctrl + c.
Вам необходимо использовать команду tail, которая выводит последнюю часть файлов в режиме реального времени, включая все входящие журналы, на стандартное устройство вывода, такое как screen. Commadn для использования является
tail -f /path/to/log/file
РЕДАКТИРОВАТЬ: ПОПРОБУЙТЕ это
tail -f --retry /path-to-log-file
Это попытается открыть файл с новым содержанием
Или это
tail -F /path/to/log/file
Я не совсем уверен, что вы пытаетесь сделать, но вы можете использовать команду watch
вместе с командой tail
... Примерно так:
watch tail /path/to/file