3

Мне поручено консолидировать процесс сборки всей команды. В том числе серверы сборки, CI и т. Д.Командная строка для серфинга окон Команда PAUSE

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

Со временем каждая команда обычно создавала свой собственный python/sh/bat/Wix в зависимости от требований их развертывания. Мне поручено объединить все сборки в одну основную систему Team City.

Проблема в том, что я обнаружил, что многие скрипты сборки (bat-файлы) содержат такие команды, как подсказка пользовательского интерфейса и ПАУЗА.

Означает ли кто-нибудь какой-либо способ подавить эти команды до/во время выполнения сценария.

Я рассмотрел предварительную обработку пакетных файлов и удаление/REM'ing Pauses, но это не идеально. Поскольку существует + 350 индивидуальных проектов, распространяемых по репозиториям + - 35 HG (которые сами по себе распространяются по 4 городам).

В идеале мы не хотим выполнять предварительную сборку.

Кто-нибудь знает любой ужин-dupper волшебной уловки, чтобы сделать это, или это требуется внесение изменений в каждом файле сборки,

ответ

12

Вы можете отключить ввод с помощью перенаправления ввода в NUL: <nul yourScrpt.bat. Это эффективно отключит любые команды PAUSE, но также отключит любую команду SET /P или другую команду, запрашивающую ввод.

Если вы отключите ввод для мастер-скрипта, который вызывает другие скрипты, дочерние скрипты наследуют отключенный ввод.

+0

Более знакомым эквивалентом является 'yourScrpt.bat

-1

Прежде всего, нет хорошо себя вести, чтобы подавить команду PAUSE; однако, возможно, чтобы сделать это очень простым способом. Метод состоит из изменить файл cmd.exe, то есть вы можете использовать редактор двоично-шестнадцатеричного для загрузки файла cmd.exe, искать команду PAUSE (которая кодируется в двухбайтовых символах UNICODE), изменить ее другой командой и сохраните файл cmd.exe. После этого команда PAUSE больше не будет работать.

Да, я знаю, что есть несколько причин НЕ делать этого; однако я просто отвечаю на этот вопрос. ОП отвечает за оценку того, был ли этот метод полезен для их нужд или нет.

Смежные вопросы