por off lotes for ejemplos crear como comandos batch bat avanzados archivos archivo batch-file

batch file - off - Cómo obtener un archivo por lotes.bat continúe en la siguiente declaración si hay un error



for en bat (5)

Estoy tratando de programar el cierre de mis servidores de VM en un .bat. si uno de los comandos vmware-cmd falla (como la máquina ya está apagada), me gustaría que continúe en lugar de bombardear.

c: cd "c:/Program Files/VMWare/VmWare Server" vmware-cmd C:/VMImages/TCVMDEVSQL01/TCVMDEVSQL01.vmx suspend soft -q vmware-cmd C:/VMImages/DevEnv/DevEnv/DevEnv.vmx suspend soft -q vmware-cmd C:/VMImages/DevEnv/TCVMDEV02/TCVMDEV02.vmx suspend soft =q robocopy c:/vmimages/ //tcedilacie1tb/VMShare/DevEnvironmentBackups/ /mir /z /r:0 /w:0 vmware-cmd C:/VMImages/TCVMDEVSQL01/TCVMDEVSQL01.vmx start vmware-cmd C:/VMImages/DevEnv/DevEnv/DevEnv.vmx start vmware-cmd C:/VMImages/DevEnv/TCVMDEV02/TCVMDEV02.vmx start


Un archivo de proceso por lotes debe continuar ejecutándose, incluso si el comando anterior generó un error. Tal vez, lo que estás viendo es que el lote aborta debido a algún otro error?


Ejecútelo dentro de otra instancia de comando con CMD /C

CMD /C vmware-cmd C:/...

Esto debería mantener los archivos BAT originales en ejecución.


Podría escribir un pequeño Programa que ejecute el comando y devuelva un valor (digamos -1 para un error). Este valor se puede usar en su archivo por lotes.


Si llama a otro archivo por lotes, debe usar CALL batchfile.cmd


¿Has intentado usar "start (cmd)" para cada comando que estás ejecutando?