2014-10-13 3 views
0

В моей среде разработки Linux я привык к созданию и развертыванию моего кода в одной строке команд, например:Windows, CMD, исполняющие несколько макросов Doskey с &&

mvn clean package && ./deploy.sh localhost 

Я написал Баш псевдонимы, которые упрощают этот процесс , в моей среде выше будет псевдонимами, как:

mvncp && deploy 

Сейчас я работаю в среде разработки Windows, поэтому я запускать команды в очень похожим образом:

mvn clean package && deploy.bat localhost 

Чтобы заменить мои псевдонимы, я создал макросы doskey. Выполнение макроса само по себе прекрасно работает, однако, когда я пытаюсь выполнить несколько макросов, соединенных вместе с & &, все макросы после первого не могут быть распознаны.

mvncp && deploy 
<output omitted> 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 6.588 s 
[INFO] Finished at: 2014-10-13T10:38:36-06:00 
[INFO] Final Memory: 31M/209M 
[INFO] ------------------------------------------------------------------------ 
'deploy' is not recognized as an internal or external command, 
operable program or batch file. 

Иногда CMD отчеты макрос не может быть найден, в остальное время он молча терпит неудачу и% ERRORLEVEL% возвращается 0.

Есть ли способ, что я могу выполнить несколько макросов Doskey как одну команду в CMD?

+0

Это не поможет здесь, но только уточнить: в окнах '' & средство "а затем", '&& «означает», и в случае успеха «затем». (чтобы быть полным: '||' было бы «и если бы это не удавалось тогда») – Stephan

ответ

3

Маркер вы ищете является $T

От https://en.wikipedia.org/wiki/DOSKEY

$T Command separator. Allows multiple commands in a macro.

+0

Я использую его только вы, в сочетании с моей сборкой maven, и она отлично работает. –

+0

Очень жаль, что DOSKEY не распознает собственные макросы .. хотелось бы создать макрос из существующих макросов. Увы, это выполняет свою работу. Благодаря! –

+1

Согласно https://stackoverflow.com/questions/25044721/using-doskey-to-spawn-multiple-instances-of-explorer, по-видимому, также возможно избежать использования &. Кажется, что^&^& действительно позволяет вам выполнять условное выполнение. –

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