For

Запуск некоторой команды для каждого файла из заданного множества.

Синтаксис

for {%переменная|%%переменная} in (множество) do команда [ПараметрыКоманднойСтроки]

Параметры

{%переменная|%%переменная}
Обязательный параметр. Замещаемый параметр. Используйте %переменная для выполнения команды for из командной строки. Используйте %%переменная для выполнения команды for в пакетном файле. Переменные учитывают регистр и могут быть представлены со значением альфа, например, %A, %B или %C.
(множество)
Обязательный параметр. Задает один или несколько файлов, каталогов, диапазон значений или текстовых строк, подлежащих обработке заданной командой. Скобки являются обязательными.
команда
Обязательный параметр. Задает команду, которая будет выполнена для каждого файла, каталога диапазона значений или текстовой строки, включенной в указанный параметр (множество).
ПараметрыКоманднойСтроки
Задает параметры командной строки, которые используются с указанной командой.
/?
Отображение справки в командной строке.

Заметки

Примеры

В пакетных файлах используется следующий синтаксис для команды for: for %%переменная in (множество) do команда [ПараметрыКоманднойСтроки] Чтобы отобразить содержимое всех файлов, имеющих разрешение .doc или .txt, в текущем каталоге с помощью заменяемой переменной %f, введите следующую команду: for %f in (*.doc *.txt) do type %f В предыдущем примере каждый файл с расширением .doc или .txt в текущем каталоге будет подставляться вместо переменной %f, пока не будет выведено содержимое всех файлов. Чтобы использовать данную команду в пакетном файле, следует заменить все вхождения %f на %%f. В противном случае переменная игнорируется, и отображается сообщение об ошибке. Чтобы произвести разбор файла, игнорируя комментарии, можно использовать следующую команду: for /F "eol=; tokens=2,3* delims=," %i in (myfile.txt) do @echo %i %j %k Данная команда производит разбор каждой строки в файле Myfile.txt, игнорируя строки, начинающиеся с точки с запятой, и передает второй и третий элементы из каждой строки в тело цикла команды FOR. Элементы разделяются запятыми и/или пробелами. Тело инструкции FOR использует %i для получения второго элемента, %j для получения третьего элемента и %k для получения оставшихся элементов в строке. Если имена файлов содержат пробелы, их следует заключать в кавычки (например, "ИмяФайла"). Для использования кавычек необходима команда usebackq. В противном случае кавычки рассматриваются как определение символьной строки для разбора. Переменная %i объявлена явно в инструкции FOR, а %j и %k объявлены неявно с помощью tokens=. С помощью tokens= можно указать до 26 элементов, если это не вызовет попытки объявить переменную с именем, большим буквы "z" или "Z". Для разбора вывода команды с помощью помещения параметра МножествоИменФайлов в скобки можно использовать следующую команду: for /F "usebackq delims==" %i IN (`set`) DO @echo %i В данном примере перечисляются имена переменных среды в текущем окружении.

Форматирование

Формат Значение
Курсив Данные, которые должен ввести пользователь
Полужирный шрифт Элементы, которые следует вводить точно, как показано
Пропуск (...) Параметры могут повторяться несколько раз в командной строке
В квадратных скобках ([]) Необязательные элементы
В фигурных скобках ({}); варианты разделены вертикальной чертой (|). Пример: {четные|нечетные} Набор значений, из которого можно выбрать только одно значение
Шрифт Courier Текст кода или выхода программы
.
Made with and Material Bootstrap. Alex_P 2015-2025