How to get an Batch file .bat continue onto the next statement if there is an error

StackOverflow https://stackoverflow.com/questions/74267

  •  09-06-2019
  •  | 
  •  

Question

I'm trying to script the shutdown of my VM Servers in a .bat. if one of the vmware-cmd commands fails (as the machine is already shutdown say), I'd like it to continue instead of bombing out.

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
Was it helpful?

Solution

Run it inside another command instance with CMD /C

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

This should keep the original BAT files running.

OTHER TIPS

If you are calling another batch file, you must use CALL batchfile.cmd

Have you tried using "start (cmd)" for each command you are executing?

You could write a little Program that executes the command an returns a value (say -1 for an error). This value can then be used in your Batch-File.

A batch file should continue executing, even if the previous command has generated an error. Perhaps, what you are seeying is the batch aborting due to some other error?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top