43 lines
1.2 KiB
Bash
43 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
# 定义目标目录(可修改为你的路径)
|
|
TARGET_DIR="$1"
|
|
|
|
# 检查是否传入目录参数
|
|
if [[ -z "$TARGET_DIR" || ! -d "$TARGET_DIR" ]]; then
|
|
echo "[错误] 请指定有效的目录路径!"
|
|
echo "用法: $0 /path/to/directory"
|
|
exit 1
|
|
fi
|
|
|
|
# 定义目标文件扩展名(视频 + 音频)
|
|
FILE_EXTENSIONS=("mp4" "mkv" "flv" "avi" "wmv" "ts" "rmvb" "webm" "mp3" "flac" "aac" "wav" "ogg" "m4a" "wma" "alac")
|
|
|
|
echo "[INFO] 正在扫描 $TARGET_DIR 下的媒体文件..."
|
|
|
|
# 遍历所有子目录并匹配目标扩展名
|
|
find "$TARGET_DIR" -type f \( \
|
|
-iname "*.mp4" -o \
|
|
-iname "*.mkv" -o \
|
|
-iname "*.flv" -o \
|
|
-iname "*.avi" -o \
|
|
-iname "*.wmv" -o \
|
|
-iname "*.ts" -o \
|
|
-iname "*.rmvb" -o \
|
|
-iname "*.webm" -o \
|
|
-iname "*.mp3" -o \
|
|
-iname "*.flac" -o \
|
|
-iname "*.aac" -o \
|
|
-iname "*.wav" -o \
|
|
-iname "*.ogg" -o \
|
|
-iname "*.m4a" -o \
|
|
-iname "*.wma" -o \
|
|
-iname "*.alac" \) -exec ls -la {} \;
|
|
|
|
# 汇总统计
|
|
echo "===== 统计 ====="
|
|
for ext in "${FILE_EXTENSIONS[@]}"; do
|
|
count=$(find "$TARGET_DIR" -type f -iname "*.$ext" | wc -l)
|
|
echo ".$ext: $count 个文件"
|
|
done
|