खोज…


वाक्य - विन्यास

  • अगर [/ i] StringToCompare1 == StringToCompare2 (कमांड) और

  • अगर त्रुटि 1 (कमांड) और (कमांडबी)

  • यदि% त्रुटिलेवल% == 1 (कमांड) और (कमांडबी)

  • यदि मौजूद नाम (कमांड) और (कमांडबी)

  • अगर परिभाषित परिवर्तनीय नाम (कमांड) और (कमांडबी)

टिप्पणियों

एक if स्टेटमेंट में से चुनने के लिए कुछ सिंटैक्स हैं। उदाहरण के रूप में if string1==string2 उपयोग करेंगे।

1-रेखा सिंटैक्स

  • if string1==string2 commandA
  • if string1==string2 (commandA)
  • if string1==string2 (commandA) else (commandB)
  • if string1==string2 (commandA) else commandB
  • if string1==string2 (commandA)else (commandB)
  • if string1==string2 (commandA)else commandB

मल्टीलाइन सिंटेक्स

if string1==string2 (
    commandA
)

या

if string1==string2 (
    commandA
) else (
    commandB
)

अभी भी कुछ अतिरिक्त वाक्यविन्यास उपलब्ध हैं।

IF स्टेटमेंट के साथ संख्याओं की तुलना करना

SET TEST=0

IF %TEST% == 0 (
    echo TEST FAILED
) ELSE IF %TEST% == 1 (
    echo TEST PASSED
) ELSE (
    echo TEST INVALID
)

तार की तुलना

IF "%~1" == "-help" (
    ECHO "Hello"
)

जहाँ %1 पहली कमांड लाइन तर्क को संदर्भित करता है और ~ स्क्रिप्ट को बुलाए जाने पर शामिल किए गए किसी भी उद्धरण को हटा देता है।

Errorlevel की तुलना करना

If Errorlevel 1 (
    Echo Errorlevel is 1 or higher
    
    REM The phrase "1 or higher" is used because If Errorlevel 1 statement means:
    REM                                          If %Errorlevel% GEQ 1
    REM                                      Not If %Errorlevel% EQU 1
)

या

If "%Errorlevel%"=="1" (
    Echo Errorlevel is 1
)

उपरोक्त स्क्रिप्ट चर त्रुटिलेवल (अंतर्निहित) की जांच करेगी। not ऑपरेटर का इस्तेमाल किया जा सकता है।

Set "Test=%Errorlevel%"

If "%Test%" == "1" (
    Echo Errorlevel is 1
)

यह भी काम करता है।

कृपया ध्यान दें कि कुछ आदेश त्रुटि को प्रभावित नहीं करते हैं :

  • टूटना
  • गूंज
  • Endlocal
  • के लिये
  • अगर
  • ठहराव
  • रेम
  • Rd / Rmdir
  • सेट
  • शीर्षक

निम्न आदेश सेट हैं, लेकिन स्पष्ट त्रुटि नहीं है :

  • cls
  • के लिए जाओ
  • चांबियाँ
  • Popd
  • खिसक जाना

निम्नलिखित आदेश निकास कोड सेट करते हैं, लेकिन त्रुटि नहीं :

  • Rd / Rmdir

निम्नलिखित आदेशों में त्रुटि कोड निर्धारित होता है लेकिन निकास कोड नहीं :

  • एमडी / एमकेडीआर

जाँच करें कि क्या फ़ाइल मौजूद है

If exist "C:\Foo\Bar.baz" (
    Echo File exist
)

यह जाँचता है कि फ़ाइल C: \ Foo \ Bar.baz का अस्तित्व है या नहीं। इस अस्तित्व है, यह इको फ़ाइल मौजूद Not ऑपरेटर भी जोड़ा जा सकता है।

यदि चर मौजूद है / सेट है

If Defined Foo (
    Echo Foo is defined
)

यह जाँच करेगा कि एक चर परिभाषित किया गया है या नहीं। फिर से, Not ऑपरेटर का उपयोग किया जा सकता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow