मुझे आश्चर्य है कि किसी को पिछले कार्यक्रम की निकास सफलता/विफलता के आधार पर किसी प्रोग्राम को सशर्त रूप से निष्पादित करने के तरीके के बारे में पता है। प्रोग्राम 1 के तुरंत बाद प्रोग्राम 2 निष्पादित करने का कोई तरीका है यदि प्रोग्राम 1 LASTEXITCODE चर के परीक्षण किए बिना सफलतापूर्वक बाहर निकलता है? मैंने बैंड और एंड ऑपरेटरों को कोई फायदा नहीं हुआ, हालांकि मुझे एहसास हुआ कि वे वैसे भी काम नहीं करेंगे, और सबसे अच्छा विकल्प अर्धविराम और एक कथन का संयोजन है। मेरा मतलब है, जब यह & & ऑपरेटर पीटा नहीं किया जा सकता, लिनक्स पर स्रोत से कुछ हद तक स्वचालित रूप से एक पैकेज के निर्माण की बात आती है:विंडोज पावरशेल में सशर्त रूप से प्रक्रिया निष्पादित करें (उदाहरण के लिए && और || बैश में ऑपरेटरों)
# Configure a package, compile it and install it
./configure && make && sudo make install
PowerShell, निम्नलिखित करने के लिए यह सोचते हैं मैं वास्तव में एक ही इस्तेमाल कर सकते हैं मुझे आवश्यकता होगी PowerShell में प्रणाली का निर्माण:
# Configure a package, compile it and install it
.\configure ; if ($LASTEXITCODE -eq 0) { make ; if ($LASTEXITCODE -eq 0) { sudo make install } }
ज़रूर, मैं, कई पंक्तियों इस्तेमाल कर सकते हैं एक फ़ाइल में सहेजने और स्क्रिप्ट को निष्पादित, लेकिन यह विचार है यह संक्षिप्त होना करने के लिए (कीस्ट्रोक्स बचाने के लिए)। शायद यह PowerShell और Bash (और यहां तक कि अंतर्निहित विंडोज कमांड प्रॉम्प्ट के बीच एक अंतर है जो & & ऑपरेटर का समर्थन करता है) मुझे समायोजित करने की आवश्यकता होगी, लेकिन अगर ऐसा करने के लिए क्लीनर तरीका है, तो मुझे जानना अच्छा लगेगा ।
जो कोई भी बैश-शैली '&&' और '||' में पावरशेल का हिस्सा बनने में रूचि रखता है: कृपया सुविधा के लिए वोट दें [यहां] (https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/11087898 लागू-और ऑपरेटरों-कि-बैश-है)। – mklement0