2017-02-23 124 views
0

我试图做一个批处理文件,但我转到口口声声说“转到在这个时候意外”这里是我的代码转到意想不到的是,在这个时候我的批处理文件

@echo off 
if %firstrun% == 5 goto shut 

后来.. ..

set firstrun=5 

而且最后

:shut 

echo o snap 

shutdown -s -f -t 120 

goto passk 
+1

批处理文件的其余部分在哪里?你需要发布的不仅仅是你有什么,以便有人能够帮助你 –

+0

它是私人的。是否有必要找到答案? –

+1

然后混淆敏感部分。批处理文件代码大部分并不那么敏感。但我最好的猜测是你没有赋值给第一个变量的值,所以IF命令变成了一个错误,因为你在比较的左边没有任何东西。在你的比较的每一边都加上引号。 – Squashman

回答

2

它的抱怨,因为如果firstrun为空,则命令语法是WRO ng并失败。简单的解决方案是将变量和常量进行比较。

if "%firstrun%" == "5" goto :shut 

或检查,如果变量是空白事前。如果你想的%firstrun%比较值的数量

if defined firstrun (
    rem Variable had a value. 
    if %firstRun% == 5 goto :shut 
) 

这种方法非常有用,因为在与该功能if语句可以胡来报价方法。

相关问题