[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理实现文件对比文件夹归类后新建多层目录

如图所示:
注:比如文件名或文件夹名 (X001)002-003-006 相当于(A)B-C-D
1.对比文件夹名称和文件名称,将字符完全匹配的文件归类到对应文件夹中,如果出现有文件无文件夹的情况,则不进行任何操作.
2.归类时将文件移动进文件夹里新建以"新"为命名的文件夹
如(A)B-C-D.jpg归类到文件夹(A)B-C-D/新/(A)B-C-D.jpg
3.归类完后再新建多层目录,如:(A)/(A)B/(A)B-C/(A)B-C-D/新/文件


求具体代码........
代码仅供参考
问题一.由于文件和文件夹名称中带了两种符号,如需归类则需要进行两个判断,我有加过但不能实现。
问题二. “)”和“-”之间的字符如何提取?
  1. @echo off
  2. for /f "tokens=1-2* delims=-" %%a in ('dir /b /a-c *.jpg') do (
  3.     if not exist "%%a/%%a-%%b/%%a-%%b-%%c/%%a-%%b-%%c-%%d" (
  4.         md "%%a/%%a-%%b/%%a-%%b-%%c/%%a-%%b-%%c-%%d"
  5.     )
  6.     move "%%a-%%b-%%c-%%d-%%e" "%%a/%%a-%%b/%%a-%%b-%%c/%%a-%%b-%%c-%%d"
  7. )
复制代码

回复 2# zaqmlp


    谢谢大神,已发支付宝,一点心意,请别嫌少

TOP

本帖最后由 zaqmlp 于 2019-6-3 00:08 编辑
  1. @echo off
  2. set info=互助互利,支付宝扫码头像,感谢赞助
  3. rem 有问题,可加QQ956535081及时沟通
  4. title %info%
  5. cd /d "%~dp0"
  6. for /f "delims=" %%a in ('dir /a-d/b "(*)*-*-*.jpg"') do (
  7.     if exist "%%~na\" (
  8.         md "%%~na\新\" 2>nul
  9.         move %%a "%%~na\新\"
  10.         for /f "tokens=1-4 delims=)-" %%b in ("%%~na") do (
  11.             md "%%b)\%%b)%%c\%%b)%%c-%%d" 2>nul
  12.             move "%%~na" "%%b)\%%b)%%c\%%b)%%c-%%d\%%~na"
  13.         )
  14.     )
  15. )
  16. echo;%info%
  17. pause
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表