20

.bat で VM サーバーのシャットダウンをスクリプト化しようとしています。vmware-cmd コマンドの 1 つが失敗した場合 (マシンが既にシャットダウンされているなど)、爆撃するのではなく続行したいと思います。

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
4

5 に答える 5

32

別のコマンドインスタンス内で実行しますCMD /C

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

これにより、元の BAT ファイルが引き続き実行されます。

于 2008-09-16T16:37:59.950 に答える
6

別のバッチ ファイルを呼び出す場合は、CALL batchfile.cmd を使用する必要があります。

于 2008-09-16T16:55:15.820 に答える
4

実行している各コマンドに対して「開始 (cmd)」を使用してみましたか?

于 2008-09-16T16:36:17.210 に答える
0

前のコマンドでエラーが発生した場合でも、バッチファイルは実行を継続する必要があります。おそらく、あなたが見ているのは、他のエラーのためにバッチが中止されていることですか?

于 2008-09-16T16:43:17.253 に答える
0

コマンドを実行して値 (エラーの場合は -1 など) を返す小さなプログラムを作成できます。この値は、バッチ ファイルで使用できます。

于 2008-09-16T16:37:15.147 に答える