2008-09-16 12 views
18

त्रुटि है तो अगले बयान पर जारी रखें। मैं अपने वीएम सर्वरों को एक .bat में बंद करने की कोशिश कर रहा हूं। यदि vmware-cmd कमांड में से कोई एक विफल रहता है (जैसा कि मशीन पहले ही बंद हो चुकी है), तो मैं इसे बमबारी के बजाय जारी रखना चाहता हूं।बैच फ़ाइल कैसे प्राप्त करें। अगर कोई त्रुटि

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 

उत्तर

26

भागो यह एक और आदेश उदाहरण के अंदर CMD /C

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

इस के साथ मूल बैट फ़ाइलों चालू रखने चाहिए।

3

क्या आपने प्रत्येक आदेश के लिए "प्रारंभ (cmd)" का उपयोग करने का प्रयास किया है?

0

आप एक छोटा प्रोग्राम लिख सकते हैं जो कमांड को एक मान देता है (एक त्रुटि के लिए कहें -1)। इस मान का उपयोग तब आपके बैच-फ़ाइल में किया जा सकता है।

0

एक बैच फ़ाइल को निष्पादन जारी रखना चाहिए, भले ही पिछली कमांड ने त्रुटि उत्पन्न की हो। शायद, आप क्या देख रहे हैं बैच कुछ अन्य त्रुटि के कारण निरस्त है?

4

आप एक और बैच फ़ाइल बुला रहे हैं, तो आप कॉल batchfile.cmd

+0

मैं एक मुख्य काम (morning.bat) और के किसी भी समय एक से (query1.bat query2.bat) कई बैच फ़ाइलों बुला रहा था का उपयोग करना चाहिए पुरानी लॉग की सफाई करते समय छोटी .bat फ़ाइलों ने "फ़ाइल नहीं मिली" जैसी त्रुटि को मारा, पूरी चीज रुक जाएगी। यह चाल है। +1 और धन्यवाद। –

संबंधित मुद्दे