Какая команда приостанавливает пакетный файл?
Обновлено: 21.11.2024
Этот раздел научит вас одной из многих полезных вещей, которые нужно знать о языке сценариев — пакетном файле; Добавление задержки/паузы/тайм-аута в пакетный файл.
Тайм-аут
Тайм-аут
Самый простой способ сделать задержку или паузу на определенное время — это использовать стандартную команду TIMEOUT . Чтобы сделать тайм-аут, который длится ровно одну минуту, мы набираем:
Что здесь происходит?
Сначала мы используем команду TIMEOUT с параметром /T (что просто означает время ожидания), затем мы указываем количество секунд ожидания. В этом случае. 60 секунд.
Тайм-аут с параметром /NOBREAK
Если мы возьмем предыдущий пример и запустим его в BATCH-файле: timeout /t 60, то, ожидая эти 60 секунд, вы фактически сможете прервать тайм-аут, нажав любую клавишу на клавиатуре. Чтобы этого не произошло, мы просто добавляем в конец параметр /NOBREAK.
При этом тайм-аут составит 60 секунд, и если вы хотите прервать тайм-аут, вам придется нажать (CTRL-C) на клавиатуре.
Тайм-аут молчания
Когда он делает тайм-аут, он будет отображать:
Чтобы скрыть сообщение, используйте аргумент NUL (для объяснения NUL: нажмите здесь)
Пауза
Чтобы приостановить выполнение сценария, просто используйте команду PAUSE.
Появится текст Нажмите любую клавишу, чтобы продолжить. . . , затем добавьте новую строку при вводе пользователем.
Допустим, мы хотим создать программу "Hello World", и после того, как мы нажмем что-нибудь на клавиатуре, мы хотим, чтобы она вышла из программы с помощью команды EXIT.
Здесь используется команда ECHO, чтобы сказать "Hello World". Затем мы используем команду PAUSE, которая отображает «Нажмите любую клавишу, чтобы продолжить». . . а затем используем команду EXIT для завершения текущего BATCH-скрипта.
Во время паузы отображается:
Скрыть подсказку "Нажмите любую клавишу для продолжения".
Чтобы скрыть сообщение, мы перенаправляем вывод на специальное устройство с именем nul. На самом деле это не настоящее устройство, но все, что мы на него отправляем, выбрасывается.
Пинг
Одной из наиболее часто используемых команд для задержки на определенное время является ping .
Основное использование
Это выведет на ваш пакетный файл/консоль следующее:
Скрыть выделенный текст
Просто добавьте >nul в конце команды, чтобы перенаправить ее на null.
Это ничего не выведет.
Сон
Сон
В более старых системах Windows тайм-аут недоступен. Однако мы можем использовать команду сна.
Использование
Очень понятно; спать 1 секунду. Однако команда sleep устарела и должна быть заменена командой timeout.
Инструмент командной строки Windows PAUSE предназначен для приостановки выполнения пакетного файла. Команда позволяет приостановить текущий запущенный файл, пока пользователь не нажмет любую клавишу.
ПАУЗА
Инструмент командной строки Windows PAUSE предназначен для приостановки обработки пакетного файла. Читайте дальше, чтобы узнать больше об этой команде.
Строка CMD
CMD Line — это текстовый интерфейс, который передает команду от пользователя в ОС.
Интерпретатор командной строки CLI
Интерпретатор командной строки (CLI) для Windows — CMD.EXE. Кроме того, вы можете использовать PowerShell, который может автоматизировать многие задачи системного администрирования, и эти задачи недоступны в командной строке. С помощью CLI вы можете общаться со своей системой, вводя текст в командах. В результате ваша система отвечает на текст, который вы ввели ранее, а затем пользователь может перейти к следующей появившейся командной строке.
Чтобы открыть окно команды "Выполнить"
Окно команд запуска помогает запускать программы, открывать файлы и папки. И есть несколько способов открыть диалоговое окно команды запуска. Это окно команды запуска удобно для быстрого перехода к нужной программе.
С помощью сочетания клавиш:
WINDOWS+R
Метод быстрого доступа к окну команды запуска является наиболее часто используемым. Также этот способ есть во всех версиях Windows. Вам нужно одновременно нажать клавиши Windows + R, чтобы открыть диалоговое окно «Выполнить команду».
Что делает команда PAUSE?
Инструмент командной строки Windows PAUSE предназначен для приостановки выполнения пакетного файла. Эта команда используется в пакетном файле компьютера. В результате это позволяет текущему файлу приостанавливаться, пока пользователь не нажмет любую клавишу. Эта команда является внутренней командой. Команда паузы используется в конце скрипта, чтобы дать пользователю время прочитать выходной текст.
Синтаксис
Появится сообщение: «Нажмите любую клавишу, чтобы продолжить. . .”
- Чтобы скрыть сообщение, вы можете использовать
- Используя CTRL+S на клавиатуре, можно использовать выполнение пакетного сценария, и это также работает для приостановки одной команды, например, в виде длинного списка DIR /s. Нажав любую клавишу, можно продолжить операцию.
- Команда PAUSE используется в конце скрипта только для того, чтобы дать пользователю время прочитать выводимый текст. В качестве альтернативы ее можно выполнить с помощью CMD/K в скрипте как
- Приведенная выше команда выполнит сценарий, и окно останется открытым для любого дальнейшего ввода. Без редактирования вы можете запустить тот же скрипт в «автоматическом режиме», что является преимуществом CMD /K.
Вердикт
В этом руководстве мы описали инструмент командной строки Windows PAUSE с его синтаксисом. Если у вас есть какие-либо предложения или вопросы относительно этой статьи, сообщите нам об этом в разделе комментариев,
мы вскоре сообщим вам об этом.
Статьи по теме
Инструмент командной строки Windows MSIEXEC представляет собой программу установки Microsoft Windows. Этот инструмент командной строки предназначен для установки и выполнения действий в установщике Windows.
Утилита командной строки TASKLIST отображает запущенные в данный момент приложения и службы, а также показывает задачи, выполняемые на локальном и удаленном компьютере.
Утилита командной строки Windows для сброса сеанса предназначена для удаления сеанса удаленного рабочего стола или сброса хост-сервера сеанса удаленного рабочего стола.
Команда Sleep/Wait — очень полезная команда, которая используется для приостановки на заданное время во время выполнения пакетного сценария. Другими словами, эта команда упрощает выполнение команды в течение заданного времени.
Вы можете оказаться в ситуации, когда вам нужно запустить серию командных строк одну за другой, но с временной задержкой между ними. В этом случае пригодится команда sleep. В этой статье показано, как использовать команду sleep в пакетных сценариях Windows.
Примечание. В Windows нет прямой команды Sleep, как в Linux, поэтому для достижения того же результата необходимо использовать другой метод. Кроме того, для реализации пакетного сценария не требуются привилегии root.
1) Использование тайм-аута для перехода в спящий режим
timeout — это старая команда Windows, представленная в Windows 2000, которая используется для добавления задержки между двумя задачами.
Пример 1: базовый тайм-аут в пакетном скрипте
@echo off
echo Первая задача здесь .
echo Приблизительно 10-секундная задержка.
timeout /t 10
echo Вторая задача.
пауза
Здесь у нас есть две задачи, и мы вставили сценарий тайм-аута, который ждет 10 секунд до завершения первой задачи перед запуском второй задачи.
Недостаток: это покажет ненужное «Ожидание 0 секунд, нажмите клавишу, чтобы продолжить». И когда вы нажмете любую клавишу, он перейдет к следующей задаче. Это хороший способ сообщить пользователю безопасный путь отхода от сна.
Пример 2: Тайм-аут только с клавишей CTRL + C для пропуска
Здесь /nobreak не позволяет прерывать или пропускать режим сна с помощью любой клавиши. Но нажатие комбинации клавиш CTRL+C заставит закрыть пакетную обработку и немедленно закрыть программу.
Пример 3. Переход в спящий режим без сообщения об истечении времени ожидания
Добавление части >nul, чтобы команда ничего не выводила на экран. Он подавляет обратный отсчет времени.
Еще один вариант использования тайм-аута выглядит следующим образом:
При этом откроется калькулятор, затем подождите 5 секунд, прежде чем открывать блокнот. Не забудьте включить и && между каждым блоком. Вы можете продолжить каскадирование, как показано ниже
Откроется калькулятор, затем подождите 3 секунды, пока откроется блокнот, затем подождите 4 секунды, пока откроется редактор реестра.
Недостатки TIMEOUT
- Невозможно выполнить задержку в доли секунды. т.е. вроде timeout /t 0.5 не работает. И выдаст
сообщение об ошибке "Ошибка: указано недопустимое значение времени ожидания (/T). Допустимый диапазон: от -1 до 99999) - Невозможно использовать второе значение больше 99999
2) Использование Ping to Delay для перехода в спящий режим
Пинг фактически используется для определения того, отвечает ли ресурс на запрос. Ping отправляет запрос к ресурсу и ждет ответа одну секунду. В результате полезно использовать его как функцию задержки. Даже если он ждет одну секунду, он может получить ответ через несколько миллисекунд. Однако, как только вы пропингуете последний пакет здесь в десятом запросе, он автоматически остановится.
Ресурс, который мы пингуем здесь, — это localhost, который представляет собой локальную петлю, и он отвечает мгновенно в течение миллисекунды, но должен ждать 1 секунду каждый. А здесь, в примере, мы ждем почти 10 секунд перед выполнением следующей строки.
Использование Ping для задержки с несуществующим IP
Здесь ждем 10 секунд. Здесь мы должны пропинговать несуществующий IP-адрес, и если он существует, он не будет работать. -w указывает на ожидание, и здесь оно ожидает 10000 мс, вы можете изменить это значение. И по умолчанию пинг будет запрашивать 4 раза до ресурса. Здесь -n 1 указывает запрос только 1 раз.
Использование Ping для задержки менее чем на 1 секунду.
Просто замените 10 000 мс на что-нибудь меньшее, чем 1000 мс. например 500 мс, как показано ниже
Использование Powershell в Command для задержки
Просто следуйте приведенному ниже простому примеру, если вы хотите использовать команды Powershell из командной строки:
введите эту команду в командной строке или пакетном файле. Эта команда будет удерживать экран в течение 5 секунд. Вы можете изменить от 5 до любого числа. Это может быть полезно в случае сбоя или проблемы с командой Windows.
Waitfor.exe — это небольшая утилита, входящая в состав Windows 7 и более поздних версий. Эта программа предназначена для прослушивания именованного сигнала и ответа на него. Посетите здесь для получения дополнительной информации.
В версии для Windows нет режима сна и ожидания команды. Лучшей альтернативой является команда Timeout, как описано выше. В Linux вы можете просто использовать: sleep n в терминале, где n — время в секундах.
Простой способ сделать это в пакетном файле до и после задачи, которую вы хотите приостановить или приостановить, выглядит следующим образом:
тайм-аут /t 5 /nobreak >nul
сообщить об этом объявлении
Всякий раз, когда мы запускаем любой пакетный файл, на короткое время появляется окно командной строки, и оно продолжается одновременно. Вы не видите, какие команды выполнялись в командной строке из-за пакетного файла.
В пакетном файле есть команды, которые выполняют действия, связанные с системой, и эти команды выполняются последовательно. Так что, если вы хотите контролировать свои пакетные файлы и предотвратить автоматическое закрытие командной строки при их запуске?
Оглавление
Ниже приведены три способа предотвратить закрытие окна командной строки после выполнения команд. Выберите наиболее подходящий для вас вариант.
Откройте пакетный файл в Блокноте, щелкнув его правой кнопкой мыши и выбрав «Изменить» в списке.
Затем вставьте следующую команду в конец пакетного файла
Далее сохраните файл, нажав «Ctrl+S», и закройте блокнот. Дважды щелкните файл .bat. Вы увидите, что CMD останется открытым, пока вы этого хотите.
Это очень простой и удобный способ предотвратить закрытие окна командной строки после выполнения команд.
Второй способ, который я вам покажу, тоже простой.
Отредактируйте файл bat, щелкнув его правой кнопкой мыши и выбрав «Редактировать» из списка. Ваш файл откроется в блокноте.
Теперь добавьте слово «ПАУЗА» в конец файла bat. Окно командной строки будет оставаться открытым до тех пор, пока вы не нажмете ни одну клавишу.
Вы можете легко увидеть каждую команду, которая была запущена в результате bat-файла в CMD, пока вы не нажимаете никакую клавишу.
Вы можете предотвратить закрытие окна командной строки после выполнения команд, добавив ключ реестра в реестр Windows. Для этого введите в блокноте следующий код и сохраните файл с расширением .reg.
Дважды щелкните сохраненный файл после его сохранения. Windows сохранит значения реестра в реестре. Запустите любую команду или пакетный сценарий в CMD сейчас, и окно командной строки останется открытым, пока вы его не закроете.
Все это быстрые и простые способы оставить окно командной строки открытым, чтобы вы могли настраивать и отслеживать каждую команду, выполняемую с помощью пакетного файла или сценария Powershell. Если у вас есть другие вопросы, пожалуйста, прокомментируйте ниже. Большое спасибо.
Читайте также: