Что делать, если после выполнения скрипта командная строка автоматически закрывается

Командная строка, будучи запущенной, закроется только тогда, когда пользователь нажмет кнопку завершения работы или выполнит в ней команду exit. Но бывает и такое, что после командная строка закрывается сама, не сообщая пользователю о результатах отработанного сценария и не сообщая о причинах закрытия. Как правило, с таким поведением консоли приходится сталкиваться при выполнении скриптов — CMD или BAT-файлов.

Это вполне нормально, но иногда нужно, чтобы после отработки такого скрипта консоль не закрывалась автоматически, а ждала ввода следующей команды.

Ну что же, понудить ее изменить свое поведения очень просто. Самый простой способ — это добавить в конец командного файла команду pause или специальный ключ, запускающую копию командной строки.

Команда pause

Главное, чтобы у вас имелись права на редактирование этого самого скрипта.

Отройте скрипт Блокнотом или любым другим текстовым редактором и добавьте в самый конец кода команду pause или cmd /k.

Команда cmd /k

Сохраните файл.

Это два разных способа и работают они по-разному.

Команда pause прерывает выполнение скрипта и выводит сообщение «Для продолжения нажмите любую клавишу…». Если команда добавлена в конец скрипта, при нажатии любой клавиши консоль будет закрыта, если же pause окажется в середине кода, после нажатия любой клавиши продолжится выполнение скрипта (следующих команд).

CMD

Команда cmd /k работает несколько иначе.

Будучи добавлена в конец сценария, она как-бы перезапускает консоль, выводя стандартное приглашение ввести новую команду.

Cmd /k

Если же добавить cmd /k в середину кода, его выполнение будет прервано и прекращено.

В этом основная разница между этими командами.

Тонкая настройка командной строки

Если нет желания возиться с каждым командным файлом, отредактируйте параметры работы самой командной строки.

Для этого открываем командой regedit редактор реестра и разворачиваем ветку:

HKCR\batfile\shell\open\command

В правой колонке меняем значение параметра по умолчанию с "%1" %* на cmd.exe /k "%1" %*.

RegEdit

Тоже самое проделываем с параметром по умолчанию в ветке HKCR\cmdfile\shell\open\command, для командных файлов формата CMD.

RegEdit

Вот и всё, отныне командная строка будет закрываться только по решению юзера, если только в сценарий не прописана команда exit.

Оцените Статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Загрузка...
12 альтернатив стандартной командной строке и консоли PowerShell в Windows 8.1 и 10

В Windows 10 классическая командная строка и консоль PowerShell претерпели ряд изменений в лучшую сторону, ...

Как искать файлы в архивах 7-Zip с помощью командной строки

7-Zip входит в тройку самых востребованных архиваторов, обладающих помимо всего еще и возможностями проводника. Однако ...

Как узнать, с какими аргументами командной строки запущена программа в Windows 10

Многие десктопные приложения поддерживают аргументы командной строки — этакие переключатели, позволяющие изменять поведение программ, запуская ...

Как в Windows 10 изменить разрешение экрана с помощью командной строки

Хотя вы всегда можете изменить разрешение экрана в параметрах Windows, иногда гораздо удобнее использовать для ...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *