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

求助:编写Bash脚本按文件名片段创建对应文件夹并归类文件

Bash脚本实现按标识分类文件到对应文件夹

针对你的文件列表,直接用下面的Bash脚本就能完成分类:

# 遍历所有符合格式的文件
for file in test-T*.txt; do
    # 提取文件名里的Txx标识作为文件夹名
    folder=${file#test-}       # 去掉文件名开头的"test-",得到类似"T01___2022.txt"的字符串
    folder=${folder%%_*}       # 去掉第一个下划线及后面的所有内容,得到"T01"
    mkdir -p "$folder"         # 创建文件夹,-p参数确保文件夹已存在时不报错
    mv "$file" "$folder/"      # 将文件移入对应文件夹
done

关键步骤解释

  • for file in test-T*.txt:自动匹配所有以test-T开头、.txt结尾的文件,逐个处理
  • ${file#test-}:Bash参数扩展语法,专门用来删除变量开头的指定字符串
  • ${folder%%_*}:同样是参数扩展,删除变量中从第一个下划线到结尾的全部内容,精准提取出Txx标识
  • mkdir -p "$folder":-p是安全创建参数,就算文件夹已经存在也不会抛出错误
  • mv "$file" "$folder/":把当前处理的文件移动到目标文件夹,双引号包裹变量是为了兼容文件名含空格的情况(虽然你的文件没有,但养成好习惯)

使用方法

  1. 把上述代码复制到文本编辑器,保存为sort_files.sh
  2. 在终端进入文件所在目录,执行chmod +x sort_files.sh给脚本添加执行权限
  3. 运行脚本:./sort_files.sh

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 00:05:24