как сделать "нажмите Enter для выхода" в пакете - PullRequest
47 голосов
/ 22 сентября 2009

Я использую rake для сборки своего проекта, и у меня есть файл build.bat, похожий на этот:

@echo off
cls
rake

Когда я дважды щелкаю на build.bat, всплывающее окно dos показывает весь прогресс, но закрывается, когда задача завершена. Есть ли способ создать Console.ReadLine, чтобы пользователь мог увидеть журнал?

Спасибо.

Обновлен:

Я попробовал ниже, но не сработало. не знаю почему.

@echo off
cls
rake
pause

Ответы [ 7 ]

70 голосов
/ 22 сентября 2009

Интерпретаторы по умолчанию от Microsoft сделаны таким образом, что они выходят, когда достигают EOF. Если rake - это другой пакетный файл, интерпретатор команд переключается на него и завершает работу после завершения интерпретации rake. Чтобы предотвратить это, напишите:

@echo off
cls
call rake
pause

ИМХО, оператор вызова запустит другой экземпляр intepretator, тем самым предотвращая переключение текущего интерпретатора на другой входной файл.

29 голосов
/ 22 сентября 2009

Пауза будет отображаться:

Нажмите любую клавишу для продолжения. , .

6 голосов
/ 22 сентября 2009

Я предполагаю, что rake - это пакетная программа. Когда вы вызываете его без call, управление не возвращается к вашему build.bat. Попробуйте:

@echo off
cls
CALL rake
pause
3 голосов
/ 20 июля 2016
@echo off
echo somethink
echo Press enter to exit
set /p input=
0 голосов
/ 28 декабря 2016
@echo off
cls
echo Press enter to get informations system !
systeminfo
pause
exit
0 голосов
/ 01 октября 2014

Используйте этот фрагмент:

@echo off
echo something
echo.
echo press enter to exit
pause >nul
exit
0 голосов
/ 22 сентября 2009

Упс ... неправильно понял вопрос ...

Пауза - путь

Старый ответ:

вы можете передавать команды в ваш файл патча ...

1009 * попробовать *

build.bat < responsefile.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...