13

Я нахожусь в процессе запуска пакетного скрипта, который занимает очень много времени и чей вывод быстро увеличивается с нечитаемой скоростью. Существует ли сочетание клавиш, которое позволяет приостановить консоль CMD, на которой она в данный момент находится, чтобы остановить и прочитать вывод, а затем снова запустить ее с того же места?

6 ответов6

15

Содержит ли ваша клавиатура клавишу паузы / прерывания ? Это хорошо послужило бы для этого. Вот как это выглядит или, по крайней мере, используется для:

Pause Break Key из Википедии

В качестве интересного бонуса этот ключ также можно использовать во время процедуры POST (Power On Self Test, которая запускается при включении компьютера) для чтения выходных данных из BIOS.

Если у вас нет этой клавиши, комбинация Control + NumLock должна работать точно так же, и есть другие варианты, в зависимости от вашего производителя, согласно Википедии.

Чтобы возобновить выполнение, нажмите Enter.

5

Я не видел этого в других ответах.

Я полагаю, что последовательные управляющие последовательности «Ctrl-S» XOFF и «Ctrl-Q» XON являются ключевыми последовательностями, предназначенными для решения этой проблемы.

Посмотри пожалуйста;

XON/XOFF

1

Вы можете использовать команду "больше". Хотя это не совсем то, что вы ищете, оно ограничит вывод экрана на страницу.

1

Добавление еще одного полезного способа для оболочек Linux. (Но, может быть, хорошо в Windows, попробуйте!)

Нажатие ctrl+z приведет к зависанию программы. (Сообщение: остановлено)

Чтобы запустить его снова в своем предыдущем состоянии, как если бы оно было приостановлено:

Введите fg

Или для многократного использования: fg program_name_previously_ctrl+z_stopped `

0

Используйте Ctrl-S (Xoff) и Ctrl-Q (Xon)

https://en.m.wikipedia.org/wiki/Software_flow_control?wprov=sfla1

0

Здесь нужно добавить еще пару методов, если мы тщательно проработаем:

1) В дополнение к кнопке Pause/Break вы можете дублировать ее функциональность, используя «CTRL +C».

Это заставит сценарий cmd приостановиться и спросит вас, хотите ли вы прекратить его. Как только вы закончите поиск, вы можете выбрать "НЕТ" (или, возможно, "да", если вам это подходит), и он продолжится (или выйти, если вы выбрали "Да").

2) Вы также можете сделать паузу с помощью мыши, щелкнув курсор мыши в окне, чтобы выбрать текст в терминале CMD.

Возможно, вы замечали этот приостановленный вывод в прошлом и думали, что вывод выводится только с задержкой, однако, когда скрипты выполняются в интерактивных экземплярах cmd, вы фактически приостанавливаете выполнение кода (так же, как с «Pause /Break» и "CTRL" + С "Методы".

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .