#!/bin/sh
#日志查找路径
logFolders=("/home/workspace/logs/zpc_mall_console" "/home/workspace/logs/zpc_mall_messaging");
zipLogTime=`date "+%Y-%m-%d"`;
#查找2天前的日志
days=2;
for logFolder in ${logFolders[*]}
do
echo "跳转到${logFolder}目录";
cd ${logFolder};
echo "当前目录为:`pwd`";
echo "开始删除${days}天前的压缩文件......";
find ${logFolder} -name *.tar.gz -exec rm -rf {} \;
n=`find ${logFolder} -mtime +${days} -name "*.log" | wc -l`;
if [ ${n} -gt 0 ];then
echo "当前日志文件夹下需压缩日志数量:${n},暂对${days}天前的日志文件进行压缩";
echo "开始压缩日志......"
tar -zcvf ${zipLogTime}.tar.gz `find -mtime +${days} -name "*.log"`;
if [ $? -eq 0 ];then
echo "日志文件压缩成功!删除原日志文件......"
for log in $(find ${logFolder} -mtime +${days} -name "*.log")
do
rm -f ${log};
if [ $? -eq 0 ];then
echo "${log}日志文件删除成功!"
else
echo "${log}日志文件删除失败!"
fi
done
else
echo "日志文件压缩失败!"
fi
else
echo "当前日志文件夹下需压缩日志数量:0"
fi
done
查看开启crontab 定时任务
service crond status
service crond start
service crond stop
service crond restart
crontab -e
30 2 */2 * * sh /home/workspace/shellDir/zipLogs.sh >> /home/workspace/logs/deletelog.log
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?