小编Abe*_*ede的帖子

是否可以将“tail -f”命令的输出输出到java程序?

根据:

unix/linux“tail -f”的Java IO实现

Java“tail -f”包装器

我认为这是可能的,但我有以下问题。

String TailCommand = "tail -f /path/PATH.txt| grep (...)";
Runtime r = Runtime.getRuntime();
Process p = r.exec(TailCommand);

//handle buffer

while (running) {
    // handle output
}
Run Code Online (Sandbox Code Playgroud)

进程 p 终止。它适用于不像“top”或“tail -f”那样没有持续更新的命令。

我想知道我是否错过了什么,有一些缓冲区限制还是什么?我正在使用 Eclipse,但我想这应该不会对进程行为产生任何影响。

事实上,也许还有另一种简单的方法可以解决我错过的问题。我使用“tail -f”,因为我必须分析不断附加的非常胖(一些 GB)的日志,并且不打算打开它并读取整个文件。我只需要控制附加行。但是我没有找到合适的尾部实现

提前致谢。

java shell logging iostream process

5
推荐指数
1
解决办法
2139
查看次数

标签 统计

iostream ×1

java ×1

logging ×1

process ×1

shell ×1