For /F ["КлючевыеСловаРазбора"] {% | %%} переменная in ("СимвольнаяСт рока") do команда [ПараметрыКоманднойСтроки]
For /F ["КлючевыеСловаРазбора"] {% | %%} переменная in ('команда') do ко- манда [ПараметрыКоманднойСтроки]
Параметр КлючевыеСловаРазбора это возможные маркеры, представляющие собой любые несокращаемые текстовые элементы анализируемых данных (табл. 3.6). Маркеры разделяются пробелами и воспринимаются как переменные итерации. В частности, если используется параметр usebackq, синтаксис указанной выше формы модифицируется сле- дующим образом:
…переменная in ("МножествоИменФайлов") do команда…
…переменная in ('СимвольнаяСтрока') do команда…
…переменная in (`команда`) do команда…
Аргумент МножествоИменФайлов задает одно или несколько имен файлов, каждый из которых открывается, считывается и обрабатывается до перехода к следующему файлу в аргументе.
Таблица 3.6. КлючевыеСловаРазбора
Ключевое слово
|
Описание
|
eol=c
|
Задает только один символ конца строки.
|
skip=n
|
Задает число строк, пропускаемых в начале файла.
|
delims=xxx
|
Задает набор разделителей.
Заменяет набор разделителей по умолчанию, состоящий из пробела и символа табуляции.
|
tokens=x, y, m-n
|
Задает элементы, передаваемые из каждой строки в тело цикла For при каждой итерации. В результате размещаются дополнительные имена переменных. Форма m-n задает диапазон, указывающий элементы с m- го по n-ый. Если последним символом строки tokens= является звез- дочка (*), то размещается дополнительная переменная, в которую поме- щается остаток строки после разбора последнего элемента.
|
Usebackq
|
Задает возможность использования кавычек для имен файлов в пара- метре МножествоИменФайлов. Задает исполнение строки, заключен- ной в обратные кавычки, как команды, а строки в одиночных кавычках
— как команды в символьной строке.
|
Инструкция For /F может быть использована применительно к отдельной строке. Для этого необходимо поместить параметр МножествоИменФайлов между скобками в одиноч- ные кавычки, то есть ('МножествоИменФайлов'). При разборе параметр будет воспринят как одиночная строка ввода из пакетного файла.
Кроме того, For /F можно использовать для разбора вывода другой команды. Для этого необходимо поместить параметр МножествоИменФайлов между скобками в обрат- ные кавычки, то есть (`МножествоИменФайлов`). Он будет воспринят как командная строка, которая передается дочернему командному интерпретатору Cmd.exe, а результаты работы команды помещаются в память и разбираются, как если бы они являлись файлом.
Следует отдельно отметить, что в рассматриваемых формах команды For может быть реализована подстановка переменных на основе модификаторов (см. подраздел 3.1 настоя- щей лабораторной работы). Разрешаются все варианты синтаксических конструкций, при- веденных в табл. 3.1 и 3.2.
Дополнительная информация по данной команде, а также примеры ее использования доступны в справке ОС (Пуск | Справка и поддержка) в соответствующем разделе. Справку также можно получить, набрав в окне командной оболочки строку For /? и нажав Enter для ввода.
Достарыңызбен бөлісу: |