Linux 查看目录下每天新增多少个文件

尺码哥 每天会产生一些错误文件,写了一个 shell 脚本,可以统计每天产生了多少个错误文件,主要用到了 find 命令、awk、uniq 等命令。

#!/bin/bash

dir='/path/to/directory'
start_date='2022-01-01'
end_date=$(date -I)  # 设置 end_date 为当前日期

# 使用 GNU date 命令创建时间循环
current_date="$start_date"
while [ "$current_date" != "$end_date" ]; do
    next_date=$(date -I -d "$current_date + 1 day")
    
    # 计算当前日期的文件数量
    file_count=$(find "$dir" -type f -newermt "$current_date" ! -newermt "$next_date" -exec stat --format=%y "{}" \; | awk '{print substr($1, 1, 10)}' | uniq -c | awk '{print $1}')

    if [[ -z "${file_count// }" ]]; then
        file_count=0
    fi

    echo "日期: $current_date, 文件数: $file_count"
    current_date="$next_date"
done

发表评论