分享一个实用脚本——服务器日志清理脚本
概述今天主要分享一个日志清理脚本 , 下面一起来看看吧~
日志清理脚本默认清理/var/log下的日志 , 默认保留14天 。
#!/bin/bash#################################################################### copyright by hwb# DATE:2020-11-03# 用途:清理过期日志文件####################################################################传参log_path="/var/log/"clean_day="14"file_size=3M#单文件大小countSize=0#清理日志文件大小date=`date +"%Y-%m-%d-%H:%M:%S"`#调用函数库[ -f /etc/init.d/functions ] thenlog_path=$1if [ -n "$2" ];thenclean_day=$2fifi#防止误操作传参为/目录if [ $log_path = "/" ] ;thenecho ""echo -e "\033[31m*****************************大哥 , 别搞事情啊 , 你这是要删根目录!*****************************\033[0m"exit 1fifunction log_clean(){echo ""echo -e "\033[33m*******************手动清理${log_path}目录下日志,保留${clean_day}天***************************************\033[0m"echo ""echo -e "\033[36m Usage: $0 需清理路径[默认为/var/log/]需清理天数[默认为14] \033[0m"echo ""#清理过期日志logFileList=`find $log_path-type f -size +$file_size -ctime +$clean_day`if [ -n "$logFileList" ];thenecho "[${date}] >>> 需清理的日志如下:"for i in $logFileListdofileSize=`ls -l $i | awk '{print $5}'`countSize=`expr $countSize + $fileSize`rm -rf $iecho "$i 文件已清理!"doneelseaction "[${date}] >>> ${log_path}目录下没有需要清理的日志" /bin/falseficountSize=`expr $countSize / 1048576`echo -e "\033[33m*****************成功清理${log_path}目录$clean_day天之前的日志,释放空间${countSize}MB******************************\033[0m"echo ""}log_clean
文章插图
执行脚本执行过程如下:
文章插图
文章插图
【分享一个实用脚本——服务器日志清理脚本】后面会分享更多devops和DBA方面的内容 , 感兴趣的朋友可以关注下!
文章插图
- 车企|华为不造车!但任正非加了一个有效期,3年
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面
- 同轴心配合|用SolidWorks画一个直角传动,画四个零件就行
- 先别|用了周冬雨的照片,我会成为下一个被告?自媒体创作者先别自乱阵脚
- 丹丹|福佑卡车创始人兼CEO单丹丹:数字领航 驶向下一个十年
- 发展|新基建发展迅猛,必然会是一个巨大的市场机遇
- 缺点|骁龙865+12GB已降至2399,X轴马达+55W快充,缺点只有一个
- 空间|垃圾文件正在吞噬你的C盘空间用这四种方法,还你一个干净的C盘
- 商业|AC有望建立一个商业帝国吗?
- 中国汽车|2020年,我们攒了一个局,串了一条链,下了一盘棋