在根目录下执行 du -sh *
可以查看到哪个文件夹的体积,再逐个分析
#!/bin/bash
# 指定目录
TARGET_DIRECTORY="/usr/local/nacos/bin/logs/"
# 查找目录下所有非隐藏文件,并按照修改时间降序排序
FILES=$(find "$TARGET_DIRECTORY" -maxdepth 1 -type f ! -name '.*' -printf '%T@ %p\n' | sort -nr)
# 计算需要删除的文件数量
TOTAL_FILES=$(echo "$FILES" | wc -l)
DELETE_COUNT=$((TOTAL_FILES - 10))
# 如果文件总数大于3,则删除最旧的文件
if [ "$TOTAL_FILES" -gt 10 ]; then
# 跳过最新的三个文件,并删除其余的文件
echo "$FILES" | tail -n +4 | awk '{print $2}' | xargs rm -f
fi
# 指定目录 删除文件夹
find /opt/acadsoc/client_group_impl/xxljob/ -mtime +10 -type d -name '*.log' -exec rm -rf {} \;
# 指定目录 删除文件夹
find /data/applogs/service-cust-service/ -mtime +10 -type f -name '*.log' -exec rm -rf {} \;
# 指定目录 删除文件
find /data/applogs/service-enterprise-management/ -mtime +10 -type f -name '*.log' -exec rm -rf {} \;
# 指定目录 删除文件
find /data/applogs/service-wx-api/ -mtime +10 -type f -name '*.log' -exec rm -rf {} \;