script run example create commands batch bat command-line batch-file windows-console

command line - run - ¿Cómo se evita que un archivo Windows Batch salga temprano?



windows scripting (1)

Puede usar el comando de llamada de DOS :

@echo off call C:/DoStuff.cmd echo Exit Code = %ERRORLEVEL%

Después de obtener el código de error, puede continuar, por ejemplo, con:

if "%ERRORLEVEL%" == "1" exit /B 1

Tengo un archivo de lote de Windows que se parece a:

C:/DoStuff.cmd move output.bak C:/newfolder/output.bak

El problema que tengo es que DoStuff.cmd ejecuta un programa java que, una vez completado, sale de la ejecución por lotes de nuevo al símbolo del sistema. La línea 2 nunca es golpeada.

He intentado lo siguiente en su lugar para ejecutar el comando en una nueva ventana:

start "My program" /WAIT C:/DoStuff.cmd move output.bak C:/newfolder/output.bak

Lo que sucede con lo anterior es que la nueva ventana de comando genera el archivo cmd y vuelve a salir a un indicador de comando en espera y la ventana nunca se cierra, dejando la primera ventana de comando esperando y la segunda sin hacer nada después de terminar el primer paso.

¿Cómo ejecuto el primer comando sin tener el control de la ejecución del lote de alguna manera?

Muchas gracias de antemano