1

我知道我可以使用以下命令将脚本输出输出到文件:

/path/to/script.sh >& path/to/output.log

问题是,我在 Java 中创建了一个无限循环,我的 shell 将运行它,因此输出文件将变得非常大。

无论如何使用linux命令通过最大文件大小来打破输出以分割日志,或者我必须在Java中更改输出而不是控制台以通过最大文件大小来分隔文件?

4

2 回答 2

2

有一种叫做multilog的东西,试试这个:

/path/to/script.sh |[multilog][2] s2000 ./logdir

将运行脚本捕获标准输出到您的 output.log 并在它大于 2000 字节时旋转它。

于 2013-08-14T13:43:12.503 回答
1

是的,使用logrotate

logrotate 旨在简化生成大量日志文件的系统的管理。它允许日志文件的自动轮换、压缩、删除和邮寄。每个日志文件可以每天、每周、每月或当它变得太大时处理。

于 2013-08-14T13:41:57.407 回答