forfiles - forfiles

редактировать
forfiles
Разработчик (и) Microsoft
Операционная система Microsoft Windows
Тип Команда
Лицензия Собственное коммерческое программное обеспечение
Веб-сайтdocs.microsoft.com / en-us / windows-server /administration/windows-commands/forfiles

forfiles- это компьютерная программа утилита для Microsoft Windows, которая выбирает файлы и запускает на них команду . Критерии выбора файла включают имя и дату последнего изменения. Спецификатор команды поддерживает некоторые специальные параметры синтаксиса. Его можно использовать непосредственно в командной строке или в пакетных файлах или других скриптах.

Команда forfilesизначально была предоставлена ​​как в составе Windows 98, Windows NT и Windows 2000 Resource Kits. Она стала стандартной утилитой с Windows Vista как часть новых функций управления.

Содержание
  • 1 Использование
    • 1.1 Переключатели
    • 1.2 Синтаксис команды
    • 1.3 Дата синтаксис
  • 2 Примеры
  • 3 См. также
  • 4 Ссылки
  • 5 Внешние ссылки
Использование

Команда forfilesимеет несколько командных строк переключатели. Если переключатели или параметры не заданы, выводится имя каждого файла в текущем каталоге.

Переключатели

ПереключательАргументЗначение
/ Pпутькаталог (папка) для поиска файлов. По умолчанию это текущий каталог. Пути UNC (\\ machine \ share) не принимаются.
/ MsearchmaskA glob pattern (поиск по шаблону). Выбираются только файлы, имя_файла соответствует шаблону. Расширение файла включено в имя файла; путь (имя папки) - нет. Шаблон должен совпадать со всем именем или использовать подстановочные знаки. По умолчанию совпадают все файлы.

Этот параметр обрабатывает шаблоны глобусов *. *и *по-разному. Первый будет соответствовать только файлам с точкой в ​​имени, а второй - даже тем, у кого нет точки или расширения. Большинство команд DOS / Windows сопоставляют файлы без расширения, даже если задан шаблон *. *.

/ S(нет)Выбирает совпадающие файлы в подкаталогах. По умолчанию поиск выполняется только в одном указанном каталоге.
/ CкомандаВыполнить заданную команду для каждого совпадающего файла. Командную строку обычно нужно заключать в двойные кавычки. См. Ниже синтаксис в командной строке. По умолчанию используется команда CMD / C ECHO @FILE, которая вызывает вывод (отображение) имени каждого совпадающего файла.
/ DдатаВыбирает файлы по дате их последнего изменения. См. Синтаксис даты ниже. По умолчанию файлы выбираются независимо от их даты.
/?(нет)Отображает справочное сообщение (краткие инструкции по использованию). Подавляет поиск файлов / выполнение команд. Не может использоваться с другими переключателями.

Синтаксис команды

Строка команды выполняется, как указано, за исключением случаев, указанных ниже.

Последовательности вида 0xFF, где «0x» является буквальным, а «FF» представляет любое двузначное шестнадцатеричное число, заменяются соответствующими однозначными байтовое значение. Это можно использовать для встраивания непечатаемых символов ASCII или расширенных символов ASCII.

Последовательность \ "заменяется буквальной кавычкой "(хотя рекомендуется использовать 0x22вместо этого, чтобы скрыть "из интерпретатора команд).

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

ПеременнаяЗначение
@fileИмя соответствующего элемента, заключенное в двойные кавычки.
@fnameБазовое имя соответствующего элемента (без расширения файла) в двойных кавычках.
@extРасширение файла в двойных кавычках без начальной точки. Если файл имеет несколько расширений, возвращается только последний. Если файл не имеет расширения, возвращается пустая строка в кавычках.
@pathПолный путь к соответствующему элементу, заключенный в двойные кавычки, включая букву диска и расширение файла (если любой).
@relpathПуть к соответствующему элементу, заключен в двойные кавычки и относительно s каталог пирогов (предоставляется / P). Каждый путь начинается с точки и обратной косой черты (. \).
@isdirВозвращает литеральную строку TRUE, если соответствующий элемент является каталогом, или FALSE, если нет.
@fsizeРазмер соответствующего элемента в байтах. Каталоги сообщают о нулевом размере.
@fdateДата последнего изменения файла в локализованном формате даты текущего пользователя.
@ftimeВремя последнего изменения файла в локализованном формате времени текущего пользователя.

Синтаксис даты

Переключатель даты (/ D) выбирает файлы на основе даты их последнего изменения с учетом аргумента даты.

Аргумент даты может быть указан как буквальная дата в формате ММ / ДД / ГГГГ (другие форматы даты не принимаются). В качестве альтернативы аргумент даты может быть задан в виде числа, и в этом случае он означает возраст в днях (т. Е. День, дата, дни до текущей даты).

Если аргумент даты начинается с минуса (-), выбираются только файлы, измененные не ранее указанной даты (более старые файлы / измененные ранее). В противном случае выбираются только файлы, измененные не ранее указанной даты (более ранние файлы / измененные позже). Может быть указан явный плюс (+), но это значение по умолчанию. Обратите внимание, что оба режима выбирают файлы на заданную дату. Невозможно выбрать файлы только на заданную дату (без даты до или после).

Примеры

Следующая команда выбирает все файлы журнала (*.LOG) в каталоге Windows 30 дней или старше и перечисляет их с датой.

C: \>FORFILES / PC: \ Windows / M *.LOG / D -30 / C "CMD / C ECHO @FDATE @FILE" 12.06.2015 "iis7.log" 28.05.2015 " msxml4-KB954430-enu.LOG "28.05.2015" msxml4-KB973688-enu.LOG "26.05.2015" setuperr.log "

Следующая команда удалит те же файлы.

C: \>FORFILES / PC: \ Windows / M *.LOG / D -30 / C "CMD / C DEL @PATH"

Использование CMD / Cтребуется в в приведенных выше примерах, поскольку и ECHO, и DEL являются внутренними для командного процессора, а не внешней служебной программой программы.

См. Также
  • cmd.exe - программа, реализующая интерпретатор командной строки Windows
  • цикл Foreach - обе команды FOR и FORFILES реализуют цикл for-each
  • find (Unix) - команда Unix, которая находит файлы по атрибуту, аналогично forfiles
  • find (Windows) - команда DOS и Windows, которая находит текст, соответствующий шаблону
  • grep - команда Unix, которая находит текст, соответствующий шаблону, аналогично Windows find
Ссылки
Внешние ссылки
В Викиучебнике есть книга по теме: Руководство по Команды Windows
Последняя правка сделана 2021-05-20 11:33:49
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте