Основные операторы, используемые в пакетных файлах
Пакетные файлы поддерживают операторы if,goto и for (в системах семейства Windows NT его возможности существенно расширены), что позволяет обрабатывать результаты выполнения предыдущих команд или приложений и в зависимости от этого выполнять дальше тот или иной блок команд (как правило, в случае удачного завершения приложение возвращает 0 в переменной errorlevel; в случае неудачного — 1 или большее значение).
Оператор ECHO позволяет управлять потоком вывода на дисплей:
ECHO OFF блокирует выдачу на экран приглашений MS-DOS и текстов команд.
ECHO ON отменяет действие ECHO OFF.
ECHO позволяет вывести текст при заблокированной выдаче.
Оператор REN позволяет внести комментарий в текст командного файла. Строка после REN не анализируется командным процессором.
Оператор PAUSE приостанавливает дальнейшую обработку пакетного файла до нажатия пользователем любой клавиши. При этом на экране появляется сообщение «Strikeanykeywhenready».
Оператор GOTO позволяет передавать управление на метку и может использоваться самостоятельно либо совместно с оператором проверки условия IF. Метка в пакетных файлах занимает отдельную строку и отличается тем, что ее первый символ — двоеточие (:).
Оператор IF позволяет проверить условие и выполнить команду в зависимости от результата его проверки. В качестве условия может выступать:
-строка1==-строка2 (например, -%1==-Петров)
EXIST имя файла (условие ИСТИНА, когда файл существует)
NOT EXIST имя файла (условие ИСТИНА, когда файл не существует)
Проверка кода завершения программы, срабатывающей перед оператором IF (сформированного специальным прерыванием):
IF ERRORLEVEL < команда >
Условие считается выполненным, если выработанный код завершения больше или равен N.
Проверка наличия файла:
IF EXIST < имя или шаблон файла > < команда cmd>
Условие считается выполненным при обнаружении файла.
Сравнение двух строк, которые могут быть заданы и через формальные параметры:
IF%==< текстовая строка > < команда cmd>
При абсолютном совпадении двух строк условие считается выполненным.
Любое из этих условий может задаваться со знаком логического отрицания NOT.
Оператор FOR обеспечивает циклическое выполнение команд MS-DOS. При этом можно задавать формальный параметр и список фактических параметров ( обычно — имен файлов ), которые последовательно подставляются в текст исполняемой команды вместо формального параметра. Формат команды:
FOR < формальный параметр > IN (< список фактических параметров >) DO < команда MS-DOS >.
FOR % IN (PAS OBJ EXE) DO COPY PROG.%A D:
вызывает копирование на диск D: трех файлов с именем PROG и расширениями PAS, OBJ, EXE.
Оператор SHIFT вызывает сдвиг формальных параметров относительно списка фактических. Так, после него первым (%1) формальным параметром становится фактический второй и т.д. Команда SHIFT может применяться для последовательной обработки заранее не определенного количества параметров либо для обработки более 9 фактических параметров ( т.к. максимальный номер формального параметра %9).
Команда паузы в командной строке MS-DOS и Windows
В Пауза команда используется в командном файле компьютера. Это позволяет компьютеру приостанавливать выполнение текущего пакетного файла до тех пор, пока пользователь не нажмет любую клавишу.
- Доступность
- Синтаксис паузы
- Примеры паузы
Доступность
Пауза — это внутренняя команда, доступная в следующих операционных системах Microsoft.
- Все версии MS-DOS
- Windows 95
- Windows 98
- Windows ME
- Windows NT
- Windows 2000
- Windows XP
- Виндоус виста
- Windows 7
- Windows 8
- Windows 10
Синтаксис паузы
Приостанавливает обработку пакетной программы и отображает сообщение:
Нажмите любую клавишу для продолжения.
Примеры паузы
При помещении в пакетный файл пауза останавливает выполнение файла до тех пор, пока вы не нажмете клавишу для продолжения.
Как сделать задержку в командном файле
wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 10 человек(а).
Количество просмотров этой статьи: 44 545.
Из этой статьи вы узнаете, как предотвратить немедленный запуск пакетного файла, когда его открывают. Есть несколько различных команд, которые можно использовать для задержки пакетного файла. Имейте в виду, что вы должны хорошо знать, как создавать пакетные файлы, прежде чем пытаться сделать его задержку.
3 способа предотвратить закрытие командной строки после выполнения команд (приостановка пакетного файла)
Misc
Когда мы запускаем какой-либо пакетный файл, вскоре появляется окно командной строки, и оно продолжается одновременно. Вы не видите, какие команды выполнялись в командной строке из-за пакетного файла.
В пакетном файле есть команды, выполняющие действия, связанные с системой, и эти команды выполняются последовательно. Что же делать, если вы хотите контролировать свои пакетные файлы и предотвратить автоматическое закрытие Command Prompt при их выполнении?
Ниже описаны три способа предотвратить закрытие окна Command Prompt после выполнения команд. Выберите наиболее подходящий для вас вариант.
#1 Предотвращение закрытия окна CMD с помощью командного переключателя cmd /k
Откройте пакетный файл в блокноте, щелкнув по нему правой кнопкой мыши и выбрав из списка пункт «Правка».

Затем вставьте следующую команду в конец вашего пакетного файла

Далее сохраните файл, нажав «Ctrl+S», и закройте блокнот. Дважды щелкните ваш .bat файл. Вы увидите, что CMD будет оставаться открытым столько, сколько вы хотите.

Это очень простой и удобный способ предотвратить закрытие окна командной строки после выполнения команд.
#2 Остановить автоматическое закрытие окна CMD с помощью команды PAUSE
Второй способ, который я собираюсь показать вам, также прост.
Редактируйте ваш bat-файл, щелкнув на нем правой кнопкой мыши и выбрав «Редактировать» из списка. Ваш файл откроется в блокноте.

Теперь добавьте слово «PAUSE» в конце вашего bat-файла. Это будет держать окно Command Prompt открытым, пока вы не нажмете любую клавишу.

Вы можете легко увидеть каждую команду, которая была выполнена в результате bat файла в CMD до тех пор, пока вы не нажмете любую клавишу.

#3 Постоянная блокировка закрытия всех cmd окон с помощью реестра Windows
Вы можете предотвратить закрытие окна Command Prompt после выполнения команд путем добавления ключа реестра в реестр Windows. Для этого введите следующий код в блокнот и сохраните файл с расширением .reg.
Двойной щелчок по сохраненному файлу после его сохранения. Windows сохранит значения реестра в реестре. Запустите любую команду или пакетный сценарий в CMD, и окно командной строки останется открытым, пока вы держите его открытым.

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