1、创建一个shell可执行文件:cut_my_log.sh
内容为:
# !/bin/bash
LOG_PATH="/var/log/nginx/"
RECORD_TIME=$(date -d "yesterday"+%Y-%m-%d+%H%M)
PID=/var/run/nginx/nginx.pid
mv ${LOG_PATH}/access.log ${LOG_PATH}/access.${RECORD TIME}.log
mv ${LOG PATH}/error.log ${LOG PATH}/error.${RECORD TIME}.log
#向Nginx主进程发送信号,用于重新打开日志文件
kill -USR1 'cat $PID?
2、为cut_my_log.sh添加可执行权限
chmod +x cut_my_log.sh
3、测试切分效果
./cut_my_log.sh
4、添加定时任务
# 1、安装定时任务
yum install crontabs
# 2、crontab -e 编辑并添加一条新任务
*/1 * * * * /usr/local/nginx/sbin/cut_my_log.sh
# 3、重启定时任务
service crond restart
备注:
常用定时任务命令:
service crond start//启动服务
service crond stop//关闭服务
service crond restart//重启服务
service crond reload//重新载入配置
crontab -e // 编辑任务
crontab -l // 查看任务列表
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?