包含在cronjob中的以下行。
18,36,54 * * * * /usr/bin/perl /home/folder.my_perl.pl >> out.log 2>> error.log
error.log文件将写入所有错误并将out.log文件写入所有输出语句。 我想知道,如果两个文件的大小超过那么,系统会自动创建另一个文件,还是我们必须手动维护它?
答案 0 :(得分:0)
你必须手动维护它#34;文件系统没有任何管家机制可以监控正在创建的文件的大小/年龄。
您可以使用logrotate
来简化管理。这是一个通常配置为由cron调用的程序(如果你有一个名为/etc/cron.daily
的脚本,则检入logrotate
),但也可以手动调用(/usr/sbin/logrotate /etc/logrotate.conf
)。
答案 1 :(得分:0)
您正在做的只是在程序启动之前向这些文件打开文件描述符1和2。它不知道输出的去向,因此在以这种方式调用它时,它无法管理它的输出。
你可以:
Sys::Syslog
,Log::Dispatch::FileRotate
,