Board logo

标题: [文件操作] 【已解决】批处理怎样根据文件夹名前2位新建文件夹并把相同前2位文件夹归类成子文件夹 [打印本页]

作者: bellacong    时间: 2020-5-7 16:02     标题: 【已解决】批处理怎样根据文件夹名前2位新建文件夹并把相同前2位文件夹归类成子文件夹

【小女子求助大佬】根据文件夹名前2位新建文件夹并把相同前2位文件夹归类成子文件夹

大家好,我是初学者。
我没有代码的学习经历,
但是我已经在努力学习,
不想作为一个伸手党麻烦大家。
但现在确实遇到了困难。

我想要把这些文件夹归类,
先按照文件夹前缀两位新建文件夹,例如01,02,03
再把前缀两位是01的文件夹都归类到01文件夹中。
变成01文件夹里有子文件夹01张三1月,01张三2月这样。

之前我在网上找了好久,看到了不分类文件夹,
分类文件的代码,也测试成功了。
不知道能不能将这个代码稍稍改动然后应用。

或者哪个大佬能帮忙写个代码,告诉我如何实现。
万分感谢。
  1. /*&cls
  2. @echo off
  3. for /f "delims=" %%a in ('dir /a-d/b *.jpg^|cscript -nologo -e:jscript "%~f0"') do (
  4.   md "%%a\"
  5.   move /y "%%a*.jpg" "%%a\"
  6. )
  7. pause&exit
  8. */
  9. var t='', map={}, files = WScript.StdIn.ReadAll().split('\r\n');
  10. for (var i=0; i<files.length; i++){
  11.     var str = files[i].replace(/(.{2}).+$/,'$1')
  12.     if(!map[str]){map[str] = true;t+=str+'\r\n';}
  13. }
  14. WSH.echo(t);
复制代码
因为这个代码是批量整理图片的.jpg但是怎么能变成整理文件夹啊……这个我真的不会了。o(╥﹏╥)o
作者: netdzb    时间: 2020-5-7 16:34

本帖最后由 netdzb 于 2020-5-7 16:36 编辑

回复 1# bellacong


你里面有javasrcipt的代码,还有vbs的代码吗?

我觉得你先写出第一步,根据子文件佳的序号,建立01和02等文件夹,
批处理是可以分割字符串的。

你先把第一步的代码完成了吧。
作者: zaqmlp    时间: 2020-5-7 16:53

  1. @echo off
  2. set info=互助互利,支付宝扫码头像,感谢打赏
  3. rem 有问题,可加QQ956535081及时沟通
  4. cd /d "%~dp0"
  5. set len=2
  6. for /f "delims=" %%a in ('dir /ad/b') do (
  7.     set "fd=%%a"
  8.     set "fn=%%~nxa"
  9.     setlocal enabledelayedexpansion
  10.     if not exist "!fn:~,%len%!\" md "!fn:~,%len%!\"
  11.     echo;"!fd!" --^> "!fn:~,%len%!\"
  12.     move "!fd!" "!fn:~,%len%!\"
  13.     endlocal
  14. )
  15. echo;%info%
  16. pause
  17. exit
复制代码

作者: smss    时间: 2020-5-7 17:01

本帖最后由 smss 于 2020-5-7 17:07 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in ('dir /b /ad "%~dp0*"') do (set "p=%%i"
  3. if not exist "%~dp0!p:~0,2!" md "%~dp0!p:~0,2!"
  4. move "%%i" "%~dp0!p:~0,2!"
  5. )
  6. pause
复制代码

作者: funken    时间: 2020-5-11 22:08

回复 4# smss

有变量延迟,出现了最大归递层,有办法吗,以前我经常这样,无奈的就掉了变量延迟哎。。头疼




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