切割服务器日志

切割服务器日志

一、前言

最近想把服务器中的日志切割一下,方便后续查询和清理,这里记录一下。

二、过程

我的日志放在 /www/wwwroot/guowang/jar 这个目录

需要将切割后的日志放到 /www/wwwroot/guowang/jar/logs 目录下

新建一个文件

log_cut.sh

写一个脚本如下

powershell 复制代码
#!/bin/bash
LOG_FILE="/www/wwwroot/guowang/jar/system.log"
OUT_DIR="/www/wwwroot/guowang/jar/logs"
DATE=$(date +%Y-%m-%d)

mkdir -p $OUT_DIR

# 复制日志,截断原日志
cp $LOG_FILE ${OUT_DIR}/system${DATE}.log
# 清空原日志(copytruncate逻辑)
> $LOG_FILE

将文件上传到服务器的

/www/wwwroot/guowang/jar

目录

如果是在 window 中做的编辑,上传之后可以检查一下,命令如下

powershell 复制代码
cat -v log_cut.sh

出现 ^M 就是 Windows 换行

这时可以使用如下命令做修正

powershell 复制代码
sed -i 's/\r//g' /www/wwwroot/guowang/jar/log_cut.sh

再次查询

powershell 复制代码
cat -v log_cut.sh

可以看到已经正常了

然后赋予执行权限

powershell 复制代码
chmod +x /www/wwwroot/guowang/jar/log_cut.sh

验证执行

powershell 复制代码
/bin/sh /www/wwwroot/guowang/jar/log_cut.sh

查看日志

powershell 复制代码
ls /www/wwwroot/guowang/jar/logs/system2026-08-11.log

可以看到正常生成了

然后加入到定时器中

powershell 复制代码
crontab -e

每天凌晨执行

powershell 复制代码
0 0 * * * /www/wwwroot/guowang/jar/log_cut.sh >> /www/wwwroot/guowang/jar/log_cut_run.log 2>&1

保存退出

相关推荐
农村小镇哥2 小时前
C#读取CSV文件的方法
服务器·数据库·c#
骇客野人2 小时前
阿里云运维手册(通用生产版|云上运维标准化文档)
运维·阿里云·云计算
雾时之林2 小时前
Linux---计算机网络常见面试题
linux·运维·计算机网络
维核科技2 小时前
多卡集群频繁裂卡、通信报错?NVLink故障排查与运维优化方案
运维·服务器维修·gpu维修·算力卡维修·gpu故障·算力卡故障·服务器故障
playboy1342 小时前
监控硬盘循环覆盖,监控数据恢复哪些情况还能找回录像
服务器·门控循环单元·智能硬件
Promise微笑2 小时前
红外热像仪选型:3~5μm中波与8~14μm长波探测机理解析
运维
承渊政道2 小时前
飞牛NAS部署Immich:搭建家庭相册并实现远程访问
运维·服务器·docker·内网穿透·cpolar·nas·immich
橘色的喵3 小时前
EventPool 32-bit 带标签 CAS 池:RT-Thread 单核 + Linux 双平台无锁
linux·运维·服务器
艾莉丝努力练剑3 小时前
【Qt:问题解决】Qt程序入口点错误修复:MinGW ABI兼容问题
java·服务器·开发语言·qt·文件系统·动静态库