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

批处理创建多级文件夹

描述:自动创建n级目录
例如:
在主目录test下,创建3级目录,test1,test2,test3.分别在test1下有test1_1、test1_2、test1_3,在test1_1下又有test1_1_1、test1_1_2、test1_1_3目录。以此类推
备注:其中3级目录可手动指定。
价格可商讨。
邮箱:ljj_dnf@163.com

  1. @echo off
  2. set "prefix=test"
  3. for /l %%a in (1 1 3) do (
  4.     for /l %%b in (1 1 3) do (
  5.         for /l %%c in (1 1 3) do (
  6.             md "%prefix%\%prefix%%%a\%prefix%%%a_%%b\%prefix%%%a_%%b_%%c" 2>nul
  7.         )
  8.     )
  9. )
  10. pause
  11. exit
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

本帖最后由 sky_Li 于 2022-2-8 12:06 编辑

回复 2# zaqmlp


   目录不一定是3级,可能是n级,就是这个for怎么根据指定的数字确定几个for

TOP

本帖最后由 flashercs 于 2022-2-8 14:46 编辑
  1. @echo off
  2. cd /d "%~dp0"
  3. set prefix=test
  4. set delims=_
  5. @REM 目录深度 level
  6. set level=2
  7. @REM 每层建立文件夹数量 dirnum
  8. set dirnum=3
  9. call :mdfoo "%prefix%" 0
  10. exit /b
  11. :mdfoo pre n
  12. setlocal
  13. if %~2 geq %level% (
  14.   2>nul md %1
  15.   goto end
  16. )
  17. set /a n=%~2+1
  18. for /l %%A in (1,1,%dirnum%) do (
  19.   call :mdfoo "%~1\%~nx1%delims%%%A" %n%
  20. )
  21. :end
  22. endlocal
  23. exit /b
复制代码
1

评分人数

    • for_flr: 这个递归妙啊!技术 + 1
微信:flashercs
QQ:49908356

TOP

回复 4# flashercs

借楼提问,如果是powershell,大佬准备怎么写呢

TOP

回复 4# flashercs


    已经解决,大佬666!!!

TOP

回复 5# for_flr
  1. $prefix = 'test'
  2. $delims = '_'
  3. # @REM 目录深度 level
  4. $level = 2
  5. # @REM 每层建立文件夹数量 dirnum
  6. $dirnum = 3
  7. function mdfoo {
  8.   param (
  9.     [string]$Path,
  10.     [int]$Level
  11.   )
  12.   if ($Level -le 0) {
  13.     New-Item -Path $Path -ItemType Directory -Force
  14.     return
  15.   }
  16.   for ($i = 1; $i -le $dirnum; $i++) {
  17.     mdfoo -Path (Join-Path -Path $Path -ChildPath "$(Split-Path -Path $Path -Leaf)$delims$i") -Level ($Level - 1)
  18.   }
  19. }
  20. mdfoo -Path $prefix -Level $level
复制代码
微信:flashercs
QQ:49908356

TOP

返回列表