Команда For
Команда for позволяет выполнить программу или команду DOS для нескольких файлов из указанного списка.
Формат команды:
for %x in (список) do (команда)
x - любой символ, кроме 0 -9; список - одно или несколько имен файлов, разделенных пробелами. Можно использовать * и ?; команда - любая программа или команда DOS, кроме for.
При использовании команды for в командном файле вместо %x надо указывать %%х.
Пример:
При вызове из командной строки: for %c in (1 2 3 4 5 6 7 8 9 0) do copy %c*.* d: - копировать все файлы из текущего каталога с именами, начинающимися на цифры, в текущий каталог диска d:.
Та же команда в командном файле: for %%c in (1 2 3 4 5 6 7 8 9 0) do copy %%c*.* d:
Переходы в командном файле
Метка - любая строка, начинающаяся с ":". Имя метки - символы, следующие за двоеточием до первого пробела или конца строки. Для перехода используется команда goto. Если после командыgoto метка не указана, то выполнение командного файла завершается.
Формат команды:
goto метка
Команда if
Позволяет выполнять или не выполнять команды в зависимости от условий.
Формат команды:
IF условие команда
Команда - любая допустимая команда (в том числе goto). Команда выполняется, если условие истинно, в противном случае команда игнорируется. Условие - одно из приведенных ниже выражений: ERRORLEVEL число - условие истинно, когда код завершения предыдущей выполненной программы больше заданного числа или равен ему. Код завершения устанавливается программой при окончании работы, по умолчанию равен 0; строка1==строка2 - условие истинно, когда две строки полностью совпадают. Если в строках имеются символы %0-%9, то вместо этих символов подставляются параметры командного файла; EXIST имя файла - истинно, когда указанный файл существует; NOT условие - истинно, когда условие ложно.
Диалоговые командные файлы
С помощью команды choice можно выполнять различные действия по выбору пользователя.
choice [/C:список_символов] [/T:символ,число_секунд] сообщение
/C:список_символов - указывает символы, которые можно ввести в ответ на сообщение. Если данный параметр не указан, то допустимые символы - это Y и N; /T:символ,число_секунд - если параметр указан, то в случае, когда пользователь по истечении заданного времени не нажал ни на одну клавишу, то принимается ответ символ; сообщение - указывает сообщение, выводимое на экран.
Чтобы при вводе символов различались прописные и строчные символы, укажите в команде параметр /S. Если в сообщении имеется символ "/", то его следует заключить в кавычки. Обычно к сообщению подставляется список допустимых для ответа символов (через запятую в квадратных скобках). Чтобы не выводить список, следует указать в команде параметр /N.
Программа choice выводит указанное сообщение и ждет, пока пользователь не введет один из указанных в списке символов. При указании параметра /T, если в течение указанного в этом параметре времени пользователь не нажал ни на одну клавишу, то принимается указанный в этом параметре ответ. Значение переменной ERRORLEVEL устанавливается равным номеру введенного символа в списке.