Board logo

标题: [文件操作] 批处理怎样根据关键字新建文件夹并移动文件? [打印本页]

作者: W102800    时间: 2023-11-8 20:31     标题: 批处理怎样根据关键字新建文件夹并移动文件?

文件夹中有很多图片,我需要把这些图片按照txt中的关键字移动到新的文件夹中,新的文件夹名称以关键字命名,
比如txt中有以下关键字
80-cp-1982-004
80-cp-1983-005
80-cp-1984-006
我需要把包含80-cp-1982-004关键字的图片移交至80-cp-1982-004文件夹中;
即得到:文件夹:80-cp-1982-004
            子文件夹:80-cp-1982-004-1982(4月-6月)-006-0001-王镇生(图片)
                          80-cp-1982-004-1982(4月-6月)-006-0001-王秋生(图片)
                          80-cp-1982-004-1982(4月-6月)-006-0001-王木生(图片)

            文件夹:80-cp-1983-005
            子文件夹:80-cp-1983-005-1983(7月-8月)-006-0001-王镇生(图片)
                          80-cp-1983-005-1983(7月-9月)-006-0001-王秋生(图片)
                          80-cp-1983-003-1983(5月-6月)-006-0001-王木生(图片)
拜托各位大神了!!!
作者: 77七    时间: 2023-11-8 21:09

  1. @echo off
  2. for /f "useback delims=" %%a in ("1.txt") do (
  3. md "%%a" 2>nul
  4. move "*%%a*.*" "%%a"
  5. )
  6. pause
复制代码

作者: W102800    时间: 2023-11-8 21:41

回复 2# 77七


   感谢感谢,可以使用!
作者: qixiaobin0715    时间: 2023-11-9 09:00

如果像顶楼例子中的那样,文件名很规律,不提供关键词文本文件也可:
  1. @echo off
  2. for /f "tokens=1-4* delims=-" %%i in ('dir /b /a-d *-*-*-*-*.jpg') do (
  3.     md "%%i-%%j-%%k-%%l" 2>nul
  4.     move "%%i-%%j-%%k-%%l-%%m" "%%i-%%j-%%k-%%l\"
  5. )
  6. pause
复制代码





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