2017-02-13 155 views
-1

我创建一个批处理文件...在这里,我的hve一个变量var具有价值说空,所以我关心的是它不执行的权利,如果else块如果else块没有执行权

if "%var%" NEQ [] goto A 
    ELSE 
    (

    echo "##########################################################################" 

    ) 

    :A 


     echo ("BATCHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH" 



     ) 
+3

阅读'如果/?'和'尝试如果 “%VAR%” NEQ “”(不呼应空)ELSE(回声空)'。 – JosefZ

+3

问题在于布局 - 括号的位置至关重要。 ''else else('必须位于同一条物理线路上,并且第一个'('与'if'位于同一条物理线路上)如果使用'else'子句,则'true'行为的括号是强制性的。 – Magoo

+0

您的IF语句将始终为TRUE,这两个比较永远不会相等,它将会使用我之前定义的 – Squashman

回答

0

您的if else语句不起作用,因为语法不正确。
cmd说:The ELSE clause must occur on the same line as the command after the IF
这意味着)后应跟着ELSE
[]并不意味着批次中有null。使用defined代替

if defined %var% (
echo defined 
) ELSE (
echo not defined 
) 
+0

,它也不起作用...... – abc