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

[文件操作] for循环嵌套只能遍历最外层第一个文件夹

请各位大哥指教,为什么这段代码遍历最外层第一个文件夹后就结束了。
setlocal enabledelayedexpansion
for /f %%i in ('dir /ad /b')do (
for /f %%j in ('dir /ad /b %%~dpi%%i')do (
set  n=0
for /f %%k in ('dir /a-d /b %%dpi%%i\%%j\*.txt
)do  ( set /a n=!n!+1




dir /s

参考dir/?
目的,学习批处理

TOP

回复 我的意思是和本批处理文件同一目录下有3个文件夹,这段代码只能对第一个文件夹循环,其他两个文件夹不能正常循环。2# hlzj88

TOP

本帖最后由 hlzj88 于 2018-1-6 12:57 编辑

回复 3# wangxiaodong
第一个for 里的dir 加参数 /s,或者其他的都加,,你的代码我没有细看。你自己调整。
目的,学习批处理

TOP

与/s参数没关系

TOP

本帖最后由 /zhqsystem/zhq 于 2018-1-6 18:11 编辑

for /f "delims=" %%i in ('dir/ad/b "%cd%\*.*"')do for /f "delims=" %%j in ('dir/ad/b "%cd%\%%~nxi\*.*"')do (
set n=0
for /f "delims=" %%k in ('dir/a-d/b "%cd%\%%~nxi\%%~nxj\*.txt"')do (
  for /f "delims=" %%k in ("%cd%\%%~nxi\%%~nxj\%%k")do (
   set /a n+=1
   echo,"%%~nxi\%%~nxj" !n!: "%%~fk"
  )
)
)
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 两次使用%%k是啥意思?6# /zhqsystem/zhq

TOP

回复 7# wangxiaodong
呃呃只是扩展而已,没有实际用途,对上一次的引用进行完整补充
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 哦,谢谢!8# /zhqsystem/zhq

TOP

返回列表