में कमांड उपलब्ध है या नहीं, मैं विंडोज के लिए बैच फ़ाइल लिख रहा हूं और कमांड 7z
(7-ज़िप) का उपयोग कर रहा हूं। मैंने पैथ में इसका स्थान रखा है। क्या यह जांचने का एक अपेक्षाकृत आसान तरीका है कि आदेश उपलब्ध है या नहीं?जांचें कि बैच फ़ाइल
उत्तर
7z.exe
निष्पादित करने का प्रयास 9 00 के %errorlevel%
को वापस नहीं करेगा यदि आदेश नहीं मिला है। आप इसे देख सकते हैं।
7z.exe
if %errorlevel%==9009 echo Command Not Found
एक अच्छा तरीका '7z.exe> nul 2> और 1 होगा। echo कमांड नहीं मिला ', मुझे लगता है। – Joey
आईएमओ का सबसे अच्छा तरीका होगा: http://stackoverflow.com/a/27014081/1724702 –
हां, एक कमांड विंडो खोलें और "7z" टाइप करें (मुझे लगता है कि निष्पादन योग्य का नाम है)। अगर आपको यह कहते हुए कोई त्रुटि मिलती है कि आदेश या ऑपरेशन पहचाना नहीं गया है तो आप जानते हैं कि पथ विवरण में कहीं समस्या है, अन्यथा यह नहीं है।
हाँ,
@echo off
set found=
set program=7z.exe
for %%i in (%path%) do if exist %%i\%program% set found=%%i
echo "%found%"
मैं नहीं आदेश है कि क्या यह (PATH
वातावरण चर में उपलब्ध है, कहते हैं) उपयोग के लिए उपलब्ध है की जाँच करने के क्रियान्वित करने की सलाह देते हैं जाएगा। तो मुझे लगता है सबसे अच्छा तरीका where
आदेश का उपयोग किया जाएगा:
where 7z.exe >nul 2>nul
if %errorlevel%==1 (
@echo 7z.exe not found in path.
[do something about it]
)
>nul
और 2>nul
वैकल्पिक हैं; where
कमांड द्वारा उत्पन्न मानक आउटपुट और मानक त्रुटि आउटपुट के प्रदर्शन को रोकने के लिए यहां उपयोग किया गया।
अद्यतन: क्यों आप निष्पादित करने के लिए नहीं चाहते हो सकता है:
- आप वास्तव में नहीं पता नहीं है हो सकता है क्या कार्यक्रम करता
- कार्यक्रम दुष्प्रभाव हो सकता है - यह कुछ करना हो सकता है कि क्या आप जानते हैं, लेकिन नहीं करना चाहते - जैसे हटाने फ़ाइलों के रूप में, कैश पुन: बनाने, आदि
- कार्यक्रम संसाधन किया जा सकता है गहन/धीमी गति से
समस्या यह निर्धारित करना है कि प्रोग्राम उपलब्ध है या नहीं, और इसलिए आपको इसे जांचना चाहिए।
'आईएफ' शर्त शर्त: 'अगर त्रुटि 0 नहीं है'। ['IF'] देखें (http://ss64.com/nt/if.html)। – jpmc26
आप इसे निष्पादित करने की अनुशंसा क्यों नहीं करेंगे? क्या यह सामान्य रूप से या इस विशेष मामले में है? – quimnuss
निष्पादित करने के कई कारण नहीं: साइड इफेक्ट्स, आपको पता नहीं हो सकता कि प्रोग्राम क्या करता है, कार्यक्रम संसाधन-गहन/धीमा आदि हो सकता है। –
- 1. जांचें कि बैच स्क्रिप्ट
- 2. जांचें कि फ़ाइल ksh
- 3. जांचें कि फ़ाइल
- 4. जांचें कि फ़ाइल php
- 5. जांचें कि फ़ाइल
- 6. जांचें कि फ़ाइल पाइथन
- 7. जांचें कि कोई फ़ाइल वाइल्डकार्ड
- 8. जांचें कि फ़ाइल में पाइथन
- 9. जांचें कि कोई फ़ाइल Yii
- 10. जांचें कि फ़ाइल केवल पढ़ने के लिए है और विंडोज बैच फ़ाइल
- 11. बैच फ़ाइल के बाद चल रही बैच फ़ाइल बैच फ़ाइल
- 12. फ़ाइल बैच द्वारा फ़ाइल बैच प्रतिलिपि
- 13. कैसे जांचें कि पाठ फ़ाइल में बैच में कुछ टेक्स्ट है या नहीं?
- 14. बैच फ़ाइल
- 15. बैच फ़ाइल
- 16. बैच फ़ाइल
- 17. बैच फ़ाइल
- 18. जांचें कि क्या NSURL स्थानीय फ़ाइल है
- 19. जांचें कि एक * प्रकार * फ़ाइल पाइथन
- 20. जांचें कि फ़ाइल मौजूद है या नहीं,
- 21. PHP जांचें कि फ़ाइल उपयोग में है
- 22. जांचें कि क्या दूरस्थ फ़ाइल PHP
- 23. जांचें कि फ़ाइल एचटीएमएल 5 फाइल एपीआई
- 24. जांचें कि कोई फ़ाइल खुली है
- 25. बैश: जांचें कि क्या दूरस्थ फ़ाइल स्कैन
- 26. PHP जांचें कि फ़ाइल में स्ट्रिंग
- 27. बैच फ़ाइल
- 28. बैच फ़ाइल
- 29. बैच फ़ाइल
- 30. बैच फ़ाइल
निष्पादित न करें। आईएमओ का सबसे अच्छा तरीका होगा: http://stackoverflow.com/a/27014081/1724702 –