我有一个catalina.out
日志文件,每隔午夜备份一次,并创建一个新的catalina.out
文件。
我想tail -f
这个文件。我有一个像这样的bash脚本:
#!/bin/bash
while true do tail -f catalina.out | grep --line-buffered "pattern" | xargs -i echo $(date) {} >> output.txt done
我使用screen
命令运行此脚本。但它第一天工作正常。当文件被替换时,它不起作用,并且在接下来的几天没有输出。在控制台中显示“文件被截断”。有人可以帮忙解决这个问题吗?
答案 0 :(得分:3)
您正在追踪的日志正在轮换。使用-F
标志尾以使其在旋转后跟随新文件。