Linuxshell旋转脚本(不是“日志旋转”脚本)

我有一个我想要存档的目录。 旋转归档。 不要超过8个文件,每个文件的名称都应该有归档date。 例:

1_2010_08_01_17h35m26s_archive.tar.bz2 2_2010_08_02_17h34m12s_archive.tar.bz2 3_2010_08_03_17h35m13s_archive.tar.bz2 4_2010_08_04_17h35m24s_archive.tar.bz2 5_2010_08_05_17h34m57s_archive.tar.bz2 6_2010_08_06_17h35m29s_archive.tar.bz2 7_2010_08_07_17h35m13s_archive.tar.bz2 8_2010_08_08_17h35m18s_archive.tar.bz2 

下一个档案将删除第8个文件,将每个文件重命名为(n + 1),然后创build一个名称为1_yyyy_mm_dd_HHhMMmSSs_archive.tar.bz2的新文件

注: 我已经看过一些logrotate脚本,但没有一个完全是这样的。

任何想法,我应该看看?

再次感谢

用一个自定义的shell脚本。 你只应该翻译你在shell命令上面写的东西。 在这里你可以find一个很好的关于shell脚本的初学者指南。

它完全不符合你的要求,但是用dateextconfiguration的logrotate像这样旋转文件:

 mainlog-20100720.gz mainlog-20100721.gz mainlog-20100722.gz mainlog-20100723.gz mainlog-20100724.gz mainlog-20100725.gz mainlog-20100726.gz 

摘自man logrotate

存档旧版本的日志文件,添加像YYYYMMDD的每日扩展,而不是简单地添加一个数字。