我正在尝试编写一个脚本,它将重命名和存档日志文件,但我无法弄明白.下面是一个如何工作的示例:如果您有一个名为error_log的文件,并且您第一次运行脚本,则应将文件error_log重命名为error_log.1,然后error_log.1使用gzip 进行存档.第二次运行脚本时,您将有两个文件:error_log error_log.1.gz,现在您应该重命名error_log.1.gz为error_log.2.gz; error_log到error_log.1并再次存档error_log.1到error_log.1.gz用gzip.
您正在寻找的是命名logrotate,这是一个基本的Unix管理命令,可以像您一样旋转日志.
看到 man 8 logrotate
简单配置文件的示例:
/var/log/apache/error_log {
daily
rotate 90 # keep only 90 logs
copytruncate # don't stop apps, but copy log
compress # gzip log in *.gz
}
Run Code Online (Sandbox Code Playgroud)