Estou tentando fazer algumas funcionalidades básicas usando um arquivo em lotes, mas o arquivo em lotes abre o cmd e executa o primeiro comando, mas para, ignorando os outros comandos. Eu tentei usar START
e, CALL
mas nem tive sucesso, alguém pode fornecer conselhos?
O arquivo em lote é exibido abaixo:
CD C:\Random\Madeup\Path
cmd.exe /K "npm install"
CALL gulp-publish.BAT
CD C:\Random\Madeup\Path\mobile\dist
REN C:\Random\Madeup\Path\mobile\dist\config.xml config-publish.txt
PAUSE
npm
através de umacmd
instância separada ?cmd
instância, os outros comandos anteriores que não são executados quando tentam instalar pacotes na primeiracmd
instância. Comogulp
necessidadesnpm
, ele retornará um erro, pois a primeiracmd
instâncianpm
não está instalada. Os comandos na primeiracmd
instância ainda continuam, mesmo senpm install
não tiver sido concluído a instalação na segundacmd
instância. É isso que está causando o problema na minha opinião.Respostas:
O arquivo em lotes abre o cmd e executa o primeiro comando, mas para
É isso que
/k
se pretende fazer:Ele é executado
cmd
e, em seguida, retorna imediatamente aocmd
shell anexo , que também ignora o restante dos comandos no arquivo em lotes.Tente substituir essa linha por:
ou:
Leitura adicional
fonte