Просмотрев Google и обмен данными суперпользователя, я узнал, как искать скрытые файлы в папке и ее подпапках.
dir /A:H /S testHiddenFile*.txt
или скрытые папки:
dir /A:HD /S testFolder
Но как мне выполнить поиск по всем подпапкам (скрытым или не скрытым) для всех файлов с определенным расширением. Например, я хочу найти расположение файлов *.log
в , C:\Users\SomeUser\
но эти файлы могут находиться в скрытых папках.
решение1
Используйте attrib /s /d *.*
команду. Смотреть больше:https://ss64.com/nt/attrib.html
решение2
Взято и адаптировано изэтот ответ, он пройдёт по всем папкам, независимо от того, скрыты они или нет, и найдёт файлы, независимо от того, скрыты они или нет:
REM Recursive scan through all folders with or without Hidden attribute for any files
for /f "tokens=* delims=" %i in ('dir /b/s/a-d *') do echo "%i"
Адаптировано по вашему вкусу для поиска всех *.log
файлов:
REM Recursive scan through all folders with or without Hidden attribute for .log files
for /f "tokens=* delims=" %i in ('dir /b/s/a-d *.log') do echo "%i"
Если вы хотите сохранить их каталоги в файл myFiles.txt
:
for /f "tokens=* delims=" %i in ('dir /b/s/a-d *.log') do echo "%i">>myFiles.txt
Если вы хотите открыть все файлы по одному:
for /f "tokens=* delims=" %%i in ('dir /b/s/a-d *.log') do (
pause
echo.
echo Opening file "%%i"...
notepad.exe "%%i"
)