我有一个java应用程序,我从命令提示符下运行在Unix上。
我正在将stdout和stderr重定向到console.out
和console.err
个文件。
文件大小正在增加,因为正在记录大量信息。
我想创建一个滚动文件,当文件大小超过特定大小时,
如果console1.out
大小超过500KB,则应创建console.out
。
目前我正在使用
java MyAppName > logs/Console.out 2> logs/Console.err &
我该怎么做?
答案 0 :(得分:6)
将结果传递给像这样的分割:
java MyAppName | split -b500k - Console.log
每次超过500k时,这将创建一个新文件。有关更多详细信息和选项,请参阅拆分手册页。
答案 1 :(得分:1)
或者您可以使用rotatelogs
nohup java MyAppName 2>&1 | rotatelogs -l Console_%Y-%m-%d.log 86400 &
这将创建一个每天都有今天日期的新文件