暂无图片
有没有Linux自动化管理日志的脚本可以参考一下?
我来答
分享
暂无图片 匿名用户
有没有Linux自动化管理日志的脚本可以参考一下?

有没有Linux自动化管理日志的脚本可以参考一下?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
豆宇斯

#!/bin/bash

# 配置参数,按需修改
LOG_DIR="/var/log" # 日志存放目录
ARCHIVE_DIR="/var/log/archive" # 存档目录
DATE_FORMAT=$(date +"%Y%m%d%H%M%S") # 日期格式
KEEP_DAYS=30 # 保留时长,天数
FILE_SUFFIX="log" # 日志文件后缀名

# 创建日志存档目录(如果不存在)
mkdir -p $ARCHIVE_DIR

# 转移到日志目录
cd $LOG_DIR

# 获取需要处理的日志文件
LOG_FILES=$(find . -maxdepth 1 -name "*.$FILE_SUFFIX" -type f)

# 遍历所有日志文件
for file in $LOG_FILES; do
echo "Processing: $file"
FILE_NAME=$(basename $file)
ARCHIVE_FILE="$ARCHIVE_DIR/$FILE_NAME-$DATE_FORMAT.gz"

# 压缩文件
gzip -c $FILE_NAME > $ARCHIVE_FILE

# 收缩文件
echo "" > $FILE_NAME
done

# 删除旧的日志文件
find $ARCHIVE_DIR -mtime +$KEEP_DAYS -exec rm {} \;

echo "Log management script completed."

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
linux下,rc.local设定的开机启动,但是不执行,原因可能是什么呢?
回答 4
已采纳
1、rc.local的权限2、rc.local如果调用了脚本,那看看脚本的权限,
在Linux7上编码mysql8源码时总是提示devtoolset-10-gcc找不到,已经安装了gcc10.3了,还是提示找不到,这是为什么?
回答 2
已采纳
centos7.9下,会默认指向devtoolset10gcc10.2.12.1.el7.x8664:GCCversion10,比gcc10.3版本低,或者看下这个gcc是哪个rpm安装的
如何学习源码
回答 1
每个人适合不同的学习方式,有的人只能从基础学起,夯实基础,一步一步提升;有的人逻辑思维能力强,或者说有计算机思维,对没接触过的东西直接就能看源码,就算有些看不懂的地方也知道该如何用专业术语去找自己需要
linux rman 备份集 到win下还原会有坏块,linux 端 validate database 检测,又检测不到坏块,这是为什么?
回答 3
源端是哪,目标端是哪。考虑传输、操作系统编码等情况
LINUX 分析CACHE
回答 1
看这个能否为你解惑https://blog.csdn.net/zhongbeidaxue/article/details/122812331
有哪个服务商的CDN可以推荐?
回答 2
已采纳
阿里云
Linux文件描述符是 52, 怎么根据52操作对应的文件?
回答 1
lsofd52FD列中的文件描述符cwd值表示应用程序的当前工作目录,可以根据结果中的pid找到对应的文件/proc/$pid/fd/52
linux 查询某个进程的进出流量, 有什么软件可以查询出来?
回答 1
已采纳
可以通过网络工具查看ip流量,在根据ip和端口查看具体进程、线程等
openeuler系统用的多吗
回答 3
已采纳
国产开源的都会支持openEuler类似的系统,商用的就是麒麟OS(基于openEuler)底座。
LINUX主机间同步数据
回答 2
Rsyncinotify实时同步。inotify会监控源目标文件,源目标文件一旦发生改变,它会调用rsync进行同步!