linux清理日志的脚本怎么写

avatar
作者
猴君
阅读量:0

清理Linux日志的脚本可以使用以下命令:

#!/bin/bash  # 清理/var/log目录下的日志文件 # 可根据需要修改日志文件目录  # 设置要删除的日志文件的最大天数 MAX_DAYS=7  # 获取当前日期 CURRENT_DATE=$(date +"%Y%m%d")  # 遍历指定目录下的日志文件 for file in /var/log/*.log; do     # 获取文件的最后修改日期     last_modified=$(stat -c %y "$file" | awk -F ' ' '{print $1}')          # 将日期转换为时间戳     last_modified_timestamp=$(date -d "$last_modified" +"%s")     current_date_timestamp=$(date -d "$CURRENT_DATE" +"%s")          # 计算文件的天数差     days_diff=$(( (current_date_timestamp - last_modified_timestamp) / (24*60*60) ))          # 判断文件的天数差是否大于最大天数     if [ "$days_diff" -gt "$MAX_DAYS" ]; then         # 删除文件         rm "$file"         echo "Deleted file: $file"     fi done 

上述脚本会遍历/var/log目录下的所有日志文件,并根据设定的MAX_DAYS值判断文件的最后修改日期是否大于最大天数。如果是,则删除文件并输出删除的文件名。

注意:运行该脚本需要具有适当的权限。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!