Как искать не скрытые файлы в скрытых подпапках с помощью командной строки Windows
Просматривая Google и обмен стеками суперпользователей показал мне, как искать в папке и ее подпапке скрытые файлы
dir /A:H /S testHiddenFile*.txt
или скрытые папки:
dir /A:HD /S testFolder
Но как мне искать во всех подпапках (скрытых или не скрытых) все файлы с определенным расширением. Например, я хочу найти местоположение *.log
файлы под C:\Users\SomeUser\
но эти файлы могут быть в скрытых папках.
2 ответа
Использование attrib /s /d *.*
команда. Подробнее: https://ss64.com/nt/attrib.html
Взятый и адаптированный из этого ответа, он будет просматривать все папки независимо от того, скрыты они или нет, и находить файлы, скрытые или нет:
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"
)