You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求编写基于前缀与文件类型归类文件的Bash脚本

照片自动归类Bash脚本方案

第一步:创建所需目录

先在照片所在目录执行这条命令,一次性创建所有需要的分类目录:

mkdir -p "HAM - REF/{RAW,JPG}" "HDR - HDRI/{RAW,JPG}" "STL - STILLS/{RAW,JPG}"

-p 参数会自动创建嵌套目录,不用手动逐层创建。

第二步:创建归类脚本

打开文本编辑器(比如系统自带的记事本、TextEdit),复制粘贴以下内容,保存为 sort_photos.sh:

#!/bin/bash

# 遍历当前目录下的所有文件
for file in *; do
    # 只处理普通文件,跳过目录
    if [ -f "$file" ]; then
        # 提取文件名前3个字符
        prefix=${file:0:3}
        # 提取文件后缀并转为大写(兼容小写后缀如jpg、raw)
        ext=$(echo "${file##*.}" | tr '[:lower:]' '[:upper:]')

        # 根据前缀匹配目标目录
        case $prefix in
            HAM) target_dir="HAM - REF/$ext" ;;
            HDR) target_dir="HDR - HDRI/$ext" ;;
            STL) target_dir="STL - STILLS/$ext" ;;
            # 前缀不匹配的文件直接跳过
            *) continue ;;
        esac

        # 移动文件到对应目录
        mv "$file" "$target_dir/"
        echo "已移动:$file → $target_dir"
    fi
done

第三步:运行脚本

  1. 打开终端,进入存放照片和脚本的目录
  2. 给脚本添加执行权限:
chmod +x sort_photos.sh
  1. 执行脚本开始归类:
./sort_photos.sh

注意事项

  • 脚本只会处理当前目录下的文件,不会递归处理子目录里的文件
  • 后缀会统一转为大写,所以 ham1234.jpg 会被归类到 HAM - REF/JPG 目录
  • 前缀不是 HAM/HDR/STL 的文件会被忽略,不会被移动

内容的提问来源于stack exchange,提问作者JasonWylfa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 08:30:51