我有一个文件夹(假设为 D:\Folder),其中包含 2k+ 个文件夹,这些文件夹可能包含或不包含子文件夹。
我需要找到包含 .zip 和 .jpg 或 .png 文件的文件夹,因此输出应该是包含这些文件夹路径的 .txt。
我不知道是否有软件或工具可以轻松做到这一点,但从我所读的内容来看,.bat 脚本应该是更简单的选择。
答案1
@echo off
for /f usebackq^tokens^=* %%i in (`%__AppDir__%where.exe /r "D:\Folder" *.zip
`)do dir /b/a-d "%%~dpi\*"|%__AppDir__%findstr.exe /e "\.png \.jpg" >nul && (
echo\%%~dpi >>"X:\The\Full\Path\To\Your\Output\File.txt" )
- 另一种方法是在第一次运行时创建文件(file.txt),在第二次运行时(完全)覆盖,并“转义”文件夹名称中可能存在的特殊字符:
@echo off
(for /f usebackq^tokens^=* %%i in (`;%__AppDir__%where.exe /r "D:\Folder" *.zip`
)do dir /b/a-d "%%~dpi\*"|%__AppDir__%findstr.exe /e "\.png \.jpg" >nul && (
echo\&<nul set/p .="%%~dpi"))>"X:\The\Full\Path\To\Your\Output\File.txt"
递归列出您的 zip 文件,在找到 zip 的地方,再次列出所有文件,如果有任何文件.png
或.jpg
位于此文件夹中,则回显找到 zip 的文件夹的路径。