我有以下内容。
- Java 进程在文件中写入日志
- 启动 Java 进程的 shell 脚本。
我需要在启动 Java 进程后读取日志文件以检查是否正确启动。
我尝试过tail -f
,但它永远都是追加的。我需要tail
在打印 n 行后停止。有没有类似-n
针对前几行的选项的方法?
答案1
您可以通过管道输出tail -f
来head
限制显示的行数:
tail -f [PATH] | head -n 100
总共只显示 100 行。
答案2
仅限新行
使用普通的tail -f
,前 10 行来自已经存在的文件:
tail -f file.log | head -30
log.txt
运行时写入10行,之后添加20(n-10)行。
对于日志文件,您通常使用-f
( --follow
) 查看将来写入的行。
为了仅查看启动后写入的 30 行tail
,请将初始输出限制为 0:
tail -f -n0 file.log | head -30