求一个定期压缩备份日志的shell脚本

时间:2021-07-02 21:52:58
linux 操作系统
日志每天增量为100M
日志的命名格式为
aaa.log  aaa.2012-12-01.log  aaa.2012-12-02.log aaa.2012-12-03.log
bbb.log  bbb.2012-12-01.log  bbb.2012-12-02.log bbb.2012-12-03.log
aaa.log和bbb.log为当天的日志。每天生成一个日志文件

现在想保留最近两个月的日志,把两个月前的照片都自动压缩成保存在一个备份文件夹中。
每个月做一次自动备份,当日志满三个月的时候,自动把最早一个月的日志压缩成两个文件如:aaa.2012-12.log.tar.gz   bbb.2012-12.log.tar.gz

求英雄指导,灰常感谢!



2 个解决方案

#1


你的描述不清楚,又是说照片又是说日志的,但是你只给出了日志的格式
以下是备份3个月前日志的脚本
它会把 aaa.2012-09-01.log  aaa.2012-09-06.log 这种3个月前的压缩成aaa.2012-09.log.tar.gz这种格式

#!/bin/sh
DATE=`date +"%Y-%m" --date="-3 months"`
tar czf aaa.${DATE}.log.tar.gz aaa.${DATE}*.log

#2


引用 1 楼 yiyamzen 的回复:
你的描述不清楚,又是说照片又是说日志的,但是你只给出了日志的格式
以下是备份3个月前日志的脚本
它会把 aaa.2012-09-01.log  aaa.2012-09-06.log 这种3个月前的压缩成aaa.2012-09.log.tar.gz这种格式

#!/bin/sh
DATE=`date +"%Y-%m" --date="-3 months"`
ta……


谢谢!

#1


你的描述不清楚,又是说照片又是说日志的,但是你只给出了日志的格式
以下是备份3个月前日志的脚本
它会把 aaa.2012-09-01.log  aaa.2012-09-06.log 这种3个月前的压缩成aaa.2012-09.log.tar.gz这种格式

#!/bin/sh
DATE=`date +"%Y-%m" --date="-3 months"`
tar czf aaa.${DATE}.log.tar.gz aaa.${DATE}*.log

#2


引用 1 楼 yiyamzen 的回复:
你的描述不清楚,又是说照片又是说日志的,但是你只给出了日志的格式
以下是备份3个月前日志的脚本
它会把 aaa.2012-09-01.log  aaa.2012-09-06.log 这种3个月前的压缩成aaa.2012-09.log.tar.gz这种格式

#!/bin/sh
DATE=`date +"%Y-%m" --date="-3 months"`
ta……


谢谢!