linux自动清理日志脚本分享


下面是一个简单的Linux自动清理日志的bash脚本示例。这个脚本会查找指定目录下所有日志文件(这里假设日志文件名以`.log`结尾),并删除修改时间超过7天的日志文件。请根据您的具体需求调整脚本中的路径和条件。


#!/bin/bash

# 设置日志文件所在的目录
LOG_DIR="/var/log/myapp"

# 查找并删除修改时间超过7天的.log文件
find "$LOG_DIR" -type f -name "*.log" -mtime +7 -exec rm -f {} \;

echo "清理完成,删除了$LOG_DIR目录下所有修改时间超过7天的日志文件。"

使用方法:

1. 将上面的脚本保存到一个文件中,例如命名为`cleanup_logs.sh`。

2. 赋予脚本执行权限:`chmod +x cleanup_logs.sh`

3. 运行脚本:`./cleanup_logs.sh`

请注意,这个脚本会永久删除文件,因此在运行之前请确保您已经备份了重要数据,并且脚本中的`LOG_DIR`变量设置正确,以避免误删其他目录下的文件。

另外,您还可以根据需要调整`-mtime +7`这个条件,比如改为`-mtime +30`来删除超过30天的日志文件。