如何使用 Windows XP 的批处理脚本列出所有子目录中的所有隐藏文件?

发布于 2024-09-10 04:05:38 字数 128 浏览 6 评论 0原文

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

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

dir /S /aH doesnt work as it wont delve any deeper inside of unhidden folders.

EDIT: turns out it WAS dir /S /aH just there wasnt any hidden or system files or folders within the non hidden files or folders i was testing on.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花桑 2024-09-17 04:05:38

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

@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 /aD 也有效

This is problematic and the only way I know to solve it is ugly and will give you the result in a "function":

@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

(This does not tell the mycallback function about folders since you said you wanted files)

Edit: It seems like dir /B /S /a-D also works

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文