执行批处理文件给Echo关闭。
批处理文件代码如下:
@echo off
setlocal EnableDelayedExpansion
SET a = Hello
SET b = World
SET /A d = 50
SET c = %a% and %b% %d%
echo %c%
endlocal
pause
正如mc nd所写,您必须摆脱平等标志之前和后面的空间。它应该是SET a=Hello
,而不是SET a = Hello
等。该代码按预期工作:
@echo off
setlocal EnableDelayedExpansion
SET a=Hello
SET b=World
SET /A d=50
SET c=%a% and %b% %d%
echo %c%
endlocal
pause
此外,线路setlocal EnableDelayedExpansion
和endlocal
在您的代码中无用,因为您永远不会使用延迟的扩展(例如!a!
而不是%a%
(。您的代码仍然正确,因为不需要延迟扩展。
如果您还有其他疑问,请这样发布。不要在其他问题上扩展此帖子。
这是您的两个,更改代码:
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET "a=Hello"
SET "b=World"
SET/A "d=50"
SET "c=%a% and %b% %d%"
ECHO %c%
ENDLOCAL
PAUSE
请检查并尝试它们,然后阅读单个命令以从您的错误中学习。
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET/P "pathToJava= **Provide your Response: "
IF /I "%pathToJava%"=="Y" ECHO found
ENDLOCAL
PAUSE