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

UNIX下批量合并不同目录对应文件至新文件夹的技术求助

UNIX下批量整理对应文件到目标文件夹的方法

假设你的两个源目录分别为dir_a(存放a开头文件)和dir_b(存放b开头文件),要将对应后缀的文件整理到target_dir下的子目录中,可通过以下shell脚本实现:

步骤1:定义路径变量

先替换脚本中的路径为你实际的目录路径:

SOURCE_A="./dir_a"  # a开头文件所在目录
SOURCE_B="./dir_b"  # b开头文件所在目录
TARGET="./target_dir"  # 目标根目录

步骤2:批量处理脚本

执行以下循环脚本,自动创建子目录并复制对应文件:

for file in "$SOURCE_A"/a*; do
    # 提取文件名中a之后的后缀部分(如a1_1 → 1_1)
    suffix="${file##*a}"
    # 创建目标子目录(不存在则自动创建)
    mkdir -p "$TARGET/$suffix"
    # 复制dir_a中的文件到对应子目录
    cp "$file" "$TARGET/$suffix/"
    # 复制dir_b中对应的b开头文件到同一子目录
    cp "$SOURCE_B/b$suffix" "$TARGET/$suffix/"
done

测试建议

为避免误操作,可先将cp替换为echo,打印出将要执行的命令,验证逻辑是否正确:

for file in "$SOURCE_A"/a*; do
    suffix="${file##*a}"
    echo "mkdir -p $TARGET/$suffix"
    echo "cp $file $TARGET/$suffix/"
    echo "cp $SOURCE_B/b$suffix $TARGET/$suffix/"
done

注意事项

  • 若文件带扩展名(如a1_1.txt),脚本依然有效,后缀会包含扩展名,对应b1_1.txt会被正确匹配复制。
  • 确保你对源目录有读取权限,对目标目录有写入权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 21:20:20