Board logo

标题: [文件操作] 批处理如何批量将文件名中具有相同前缀字符串的文件移动到以该字符串命名的文件夹里? [打印本页]

作者: w64489728    时间: 2016-7-7 19:19     标题: 批处理如何批量将文件名中具有相同前缀字符串的文件移动到以该字符串命名的文件夹里?

本帖最后由 w64489728 于 2016-7-8 08:16 编辑

在网上下了一整个网站的图片并复制了文件夹结构20w张图   但发现好乱啊  手动整理要疯
找过百度  试过相似的代码 研究了一下 自己还是搞不定 唉 人笨

H:\pic\Nonslipnews
abby-beautyleg-01.jpg....... abby-beautyleg-121 移动到   abby-beautyleg文件夹
aiko-horiguchi-00.jpg.......aiko-horiguchi-102 移动到 aiko-horiguchi文件夹
fumina-suzuki8_1......fumina-suzuki8_55   移动到fumina-suzuki8文件夹
a_profile11_1........a_profile11_28        移动到a_profile11文件夹
mikoto-tsukasa_1.............mikoto-tsukasa_30  移动到mikoto-tsukasa文件夹
gajinsiri_yotsunbai_01........gajinsiri_yotsunbai_21  移动到gajinsiri_yotsunbai文件夹
hnagravure44_01............hnagravure44_76   移动到hnagravure44文件夹
aizawa_arisa_2325_001........aizawa_arisa_2325_122   移动到aizawa_arisa_2325文件夹
能帮忙给个代码  后面加个说明  我能学习一下

我也有在论坛搜索过差不多的  改过路径还是提示找不到路径  实在没辙只能发帖求助了
http://www.bathome.net/redirect. ... 7343&ptid=38045

版主威武 帮我改标题  表达的更清楚了  谢谢
作者: WHY    时间: 2016-7-8 13:47

  1. @echo off & setlocal enabledelayedexpansion
  2. cd /d "H:\pic\Nonslipnews"
  3. for /f "delims=" %%i in ('dir /b /a-d *.jpg ^| findstr /i /e "[_\-][0-9][0-9]*\.jpg"') do (
  4.         set "file=%%i"
  5.         set "file=!file:_=\_!"
  6.         set "file=!file:-=\-!"
  7.         for /f "delims=" %%j in ("\!file!") do set "folder=%%~pj"
  8.         set "folder=!folder:\=!"
  9.         if not exist "!folder!\" md "!folder!\"
  10.         move "%%i" "!folder!\"
  11. )
  12. pause
复制代码





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