在 Linux 中,使用 command tailf
,如何跟踪文件夹内和子文件夹中的多个日志文件?
问问题
53443 次
5 回答
89
要记录文件夹中的所有文件,您可以转到该文件夹并写入
tail -f *.log
要将子文件夹添加到 tailf 命令,请使用
tail -f **/*.log
当然,可以改进正则表达式以仅匹配特定文件名。
于 2013-08-19T19:13:08.460 回答
30
这将递归地查找当前目录及其子文件夹中的所有 *.log 文件并跟踪它们。
find . -type f \( -name "*.log" \) -exec tail -f "$file" {} +
或者很快使用 xargs:
find . -name "*.log" | xargs tail -f
于 2013-12-11T05:35:25.187 回答
17
如果所有日志文件的扩展名不同。您可以使用以下命令。
tail -f **/*
于 2016-06-23T10:31:35.787 回答
1
这种方式递归查找文件,从每个文件的第 5 行开始打印行并保存在 concat.txt
find . -type f \( -name "*.dat" \) -exec tail -n+5 -q "$file" {} + |tee concat.txt
于 2015-08-26T17:23:49.007 回答
0
如果文件集发生变化,将 luchaninov 的评论形式化为答案multitail
是很有用的。相反,tail
似乎无法找到启动后创建的新文件。
安装:
sudo apt install multitail
手动的:
man multitail
用法:
multitail -Q 4 '/path/to/logs/*.log'
上面的命令应该每隔指定的秒数检查新文件的引用模式。必须引用该模式。
于 2021-11-20T16:57:59.587 回答