Board logo

标题: [文本处理] 批处理怎样把图片以_命名前为准合并到同名称得文件夹中? [打印本页]

作者: popxxterry    时间: 2023-3-15 14:12     标题: 批处理怎样把图片以_命名前为准合并到同名称得文件夹中?

文件夹中会有.jpg和.png的图片,以_前的命名为准新建合并到同名称得文件夹中,想用bat一键操作。
例:文件夹中有这些图片,
a_01.jpg
a_02.jpg
b_01.png
b_02.png
c_01.jpg
c_02.jpg
...

合并后的文件夹
a
b
c
...
作者: pd1    时间: 2023-3-15 14:22

  1. @echo off
  2. for /f "tokens=1-2 delims=_" %%a in ('dir /b *.png *.jpg') do (
  3. md %%a >nul 2>nul
  4. move %%a_%%b %%a
  5. )
  6. pause
复制代码

作者: popxxterry    时间: 2023-3-15 14:29

回复 2# pd1


    十分感谢
作者: terse    时间: 2023-3-15 14:39

不清楚楼主使用环境  这里通配符也可以  move %%a_*.* %%a
作者: 77七    时间: 2023-3-15 16:16

  1. @echo off
  2. for /f "tokens=1* delims=_" %%a in ('dir /b /a-d *.jpg *.png') do (
  3. if not exist "%%a\" (
  4. md "%%a\"
  5. )
  6. move "%%a_%%b" "%%a\"
  7. )
  8. pause
复制代码

作者: popxxterry    时间: 2023-3-15 17:12

回复 5# 77七


    两者有什么区别嘛,我试了下都可以正常达到我要的效果
作者: 77七    时间: 2023-3-15 17:25

回复 6# popxxterry


   针对文件名含空格或者含多个"_"符号或者某个文件夹名为*.jpg




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2