Команда WHERE - поиск файлов по шаблону имени.



Команда WHERE используется для определения расположения файлов в каталогах операционных систем Windows 7 и старше, имена которых соответствуют задаваемому шаблону поиска, а также, при необходимости - размера, даты и времени их изменения. По умолчанию поиск выполняется в текущем каталоге и в каталогах, определяемых значением переменной среды PATH.

Формат командной строки:

WHERE [/R каталог] [/Q] [/F] [/T] шаблон...

Параметры командной строки:

/R - Рекурсивный поиск и отображение файлов, соответствующих указанному шаблону, начиная с указанного каталога.

/Q - Возврат только кода выхода без отображения списка найденных файлов (тихий режим)

/F - Отображение имен найденных файлов в кавычках.

/T - Отображение размера, даты и времени изменения для всех найденных файлов.

шаблон - Шаблон поиска для искомых файлов. В шаблоне можно использовать подстановочные знаки * и ?. Также можно задавать конструкции "$пер:шаблон" и "путь:шаблон", где "пер" представляет переменную среды, и поиск осуществляется по путям, указанным в переменной среды "пер". Эти конструкции не следует использовать с параметром /R. При поиске к шаблону также добавляются расширения из переменной PATHEXT. Пример: WHERE "c:\windows;c:\windows\system32:*.dll"

/? - Вывод справки по использованию.

WHERE.EXE возвращает код ошибки 0, если поиск был успешным, 1 - если безуспешным, и 2, если возникли ошибки.





Примеры использования команды WHERE.



WHERE /? - выдать краткую справку по использованию команды.

WHERE myfile.doc - найти расположение файла myfile.doc. Поиск выполняется в текущем каталоге и каталогах, имена которых задаются значением переменной PATH

WHERE /T myfile.doc - то же, что и в предыдущем случае, но в результатах поиска отображается размер, дата и время изменения файла.

WHERE /R C:\ myfile.doc - найти расположение файла myfile.doc. Поиск выполняется рекурсивно, начиная с корневого каталога диска C: ( поиск по всему диску C: )

WHERE /R %windir%\system32 *.log - поиск файлов с расширением log начиная с подкаталога system32 системного каталога Windows.

WHERE /R %windir%\system32 *.log > loglist.txt - поиск файлов с расширением log начиная с подкаталога system32 системного каталога Windows с записью результатов в текстовый файл loglist.txt текущего каталога.

WHERE /R C:\ ???dir.* - поиск с использованием шаблона, где первые 3 символа имени файла могут быть любыми (???, следующие 3 символа принимают значение dir и с любым расширением.

where /R C:\windows\system32 *7*.exe - поиск исполняемых файлов, в имени которых содержится символ "7" , начиная с каталога C:\windows\system32

WHERE /R c:\windows *.vbs *.cmd *.bat - поиск файлов сценариев ( скриптов ) - файлов с расширением vbs, cmd и bat начиная с каталога C:\windows

WHERE /Q file1.ext - не отображать результат поиска. При выполнении этой команды будет установлено значение переменной ERRORLEVEL в зависимости от результата поиска:

ERRORLEVEL=0 - файл file1.ext найден.

ERRORLEVEL=1 - файл file1.ext не найден.

ERRORLEVEL=2 - при поиске файла file1.ext возникла ошибка.

Обычно команда WHERE /Q используется в командных файлах, когда в зависимости от результата поиска заданного файла нужно выполнить ту или иную подпрограмму.





Весь список команд CMD Windows


Рейтинг@Mail.ru