0

dir /S /aH 不起作用,因为它不会深入研究未隐藏的文件夹。

编辑:原来是 dir /S /aH 只是在我正在测试的非隐藏文件或文件夹中没有任何隐藏或系统文件或文件夹。

4

1 回答 1

1

这是有问题的,我知道解决它的唯一方法是丑陋的,并且会给你一个“函数”的结果:

@echo off
setlocal ENABLEEXTENSIONS
goto main

:EnumAllFiles 
FOR /F "tokens=*" %%A IN ('dir /B /S /A:-D-H "%~1" 2^>nul') DO call :%2 "%%~A"
FOR /F "tokens=*" %%A IN ('dir /B /S /A:-DH "%~1" 2^>nul') DO call :%2 "%%~A"
goto :EOF

:mycallback
echo file=%~1
goto :EOF

:main
call :EnumAllFiles "c:\someDirToSearch" mycallback

(这不会告诉 mycallback 函数关于文件夹,因为你说你想要文件)

编辑:似乎dir /B /S /a-D也有效

于 2010-07-15T15:12:26.483 回答