我有一个批处理文件,正在使用for循环扫描Windows 7框上的c:\文件夹(及其相应的子文件夹)。我在排除某些文件夹(例如用户,Windows,LocalAppData等)时遇到问题。
我需要浏览C:\中的文件夹以找到特定的命名文件夹(即“ myFolder”),而无需扫描上述文件夹,以增加检测C:文件夹中所需文件夹的时间。
代码:
@echo off
for /d /r "c:\" %%a in (*) do (
findstr /v "Users" "Windows"
)
答案 0 :(得分:0)
使用dir
command返回所有所需目录myFolder
的路径,用findstr
command过滤它们,然后用for /F
loop捕获结果,如下所示:< / p>
for /F "delims=" %%D in ('dir /B /S /A:D "C:\myFolder" ^| findstr /I /V /C:"\\Users\\" /C:"\\Windows\\"') do echo/%%D
您当然可以指定更多排除项。
如果要将例外放在文本文件C:\exclude.txt
中:
Users Windows
像这样更改方法:
for /F "delims=" %%D in ('dir /B /S /A:D "C:\myFolder" ^| findstr /I /V /L /G:"C:\exclude.txt"') do echo/%%D