【问题标题】:Grep command, File truncatedGrep 命令,文件被截断
【发布时间】:2015-07-21 23:17:32
【问题描述】:

我有一个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 命令运行这个脚本。但它适用于第一天。当文件被替换时,它不起作用,接下来的几天没有任何输出。在控制台中显示“文件被截断”。有人可以帮忙解决这个问题吗?

【问题讨论】:

    标签: bash logging terminal grep


    【解决方案1】:

    您正在跟踪的日志正在轮换。使用 -F 标志尾部使其在轮换后跟随新文件。

    【讨论】:

    • 我已经用-F 选项更改了脚本。但是第二天记录就停止了。没有帮助。还有其他意见吗?
    • tail 的新文件名仍然是catalina.out 对吧? -F 标志将跟随文件名,因此如果由于某种原因发生更改,-F 将不起作用。
    猜你喜欢
    • 1970-01-01
    • 2013-07-26
    • 2016-01-10
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 1970-01-01
    • 1970-01-01
    • 2015-01-25
    相关资源
    最近更新 更多