Board logo

标题: [文件操作] 批处理怎样批量将子文件夹内图片文件按指定关键词进行归类? [打印本页]

作者: aza    时间: 2022-11-20 20:30     标题: 批处理怎样批量将子文件夹内图片文件按指定关键词进行归类?

工作中有大量的产品图片需要归类处理,比如一次需要处理100款图片,每款图片独立1个文件夹。


里面包含两种方式命名的图:主图1,主图2……和详情1,详情2……到详情X。

现在需要在上一级文件夹,写一个批处理代码,针对所有子文件夹的图片归类。

在每个子文件夹里分别创建主图 和详情两个文件夹,

然后分别将含有 主图 和 详情 关键词的图片归类到对应的文件夹去。
作者: aza    时间: 2022-11-20 20:33

@echo off
md 主图 2>nul
for /f "tokens=*" %%a in ('dir /b /a-d /s *主图 *') do move %%a .\主图\

md 详情 2>nul
for /f "tokens=*" %%a in ('dir /b /a-d /s *详情 *') do move %%a .\详情\

之前有个这个。但是好像只能在子文件夹里一个个点击操作。这样能节省一些时间,但还不够高效。并且,我换了台电脑操作。好像又不行了。


这个代码如果放在上一级文件夹运行,就会把所有子文件夹的主图移动到父文件夹的主图文件夹里。这样就乱了。
作者: 77七    时间: 2022-11-21 08:20

  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "tokens=*" %%a in ('dir /b /s /a-d  *主图*') do (
  4.   cd %%~dpa & md 主图 2>nul & move %%a .\主图\
  5. )
  6. cd /d "%~dp0"
  7. for /f "tokens=*" %%a in ('dir /b /s /a-d  *详情*') do (
  8.   cd %%~dpa & md 详情 2>nul & move %%a .\详情\
  9. )
复制代码

作者: qixiaobin0715    时间: 2022-11-21 08:32

bat文件另存为ANSI编码:
  1. @echo off
  2. for /d %%a in (*) do (
  3.     md "%%a\主图"
  4.     md "%%a\详情"
  5.     move "%%a\*主图*.*" "%%a\主图\">nul 2>nul
  6.     move "%%a\*详情*.*" "%%a\详情\">nul 2>nul
  7. )
  8. pause
复制代码

作者: aza    时间: 2022-12-1 15:06

回复 4# qixiaobin0715
感谢大神!!
作者: aza    时间: 2022-12-1 15:06

回复 3# 77七


    感谢感谢




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