Batch file EQU在这个时候出人意料?
嗨,当我试着运行我的批处理代码时,它说EQU此时未被执行。。? 我尝试过%input%==这在某种程度上说明了相同的消息。 顺便说一下,当我启动程序时,它会自动将它带到底部的最后一个部分。我把它移到了那里,想看看这是否能解决我的问题(它曾经在顶部)。你能帮我解决这个问题吗?这不起作用:Batch file EQU在这个时候出人意料?,batch-file,Batch File,嗨,当我试着运行我的批处理代码时,它说EQU此时未被执行。。? 我尝试过%input%==这在某种程度上说明了相同的消息。 顺便说一下,当我启动程序时,它会自动将它带到底部的最后一个部分。我把它移到了那里,想看看这是否能解决我的问题(它曾经在顶部)。你能帮我解决这个问题吗?这不起作用: set /p adminpassword=Password: if errorlevel equ thebulldogtheo goto AdminChatRoom 将其更改为: set /p "adminpa
set /p adminpassword=Password:
if errorlevel equ thebulldogtheo goto AdminChatRoom
将其更改为:
set /p "adminpassword=Password: "
if "%adminpassword%" equ "thebulldogtheo" goto :AdminChatRoom
顺便说一句:您可以从
选项
命令中获得错误级别,而不是从设置/p
中获得错误级别,因为您没有发布任何关于140多行代码中出现错误的线索,我们只能猜测
这个错误的正常原因是,从你的文章中(大概是)这行的部分,%input%=
,原因很简单。变量input
没有值,因此该行变为
IF EQU [well, I don't know the rest since you haven't indicated what it might be]
治疗(1)
如果没有定义,输入转到某个地方
如果%input%equ
治疗(2)
如果“%input%”等于“which”
治疗(3)
如果X%输入%equ X无论什么
(其中X实际上可以是任何字符,也可以作为后缀而不是前缀附加)
目的是确保比较的两边都不是空的
…顺便说一句
if ERRORLEVEL == 1 goto AdminChat
也不行ERRORLEVEL
是一个字符串-它永远不会等于1
if %ERRORLEVEL% == 1 goto AdminChat
errorlevel是字符串而不是值,天哪!浪费了这么多调试时间。你是救命恩人。pastebin源不包含任何具有“%input%=”的代码。