バッチファイルを実行するとECHOがオフになっています。バッチファイルの実行中に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
バッチファイルを実行するとECHOがオフになっています。バッチファイルの実行中に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%
の)遅れた拡張を使用することはありませんよう。遅延拡張を必要としないので、あなたのコードはまだ正しいです。
ご不明な点がございましたら、そのように投稿してください。この投稿を他の質問にも展開しないでください。ここで
はあなたの2、変更コードです:
@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
エコー '試してみてください。%のCの%'。 – Brandin
等号の右側のスペースは変数の値に含まれますが、等号の左側のスペースは変数名に含まれます。あなたは 'a'、' b'、 'c'変数を持たず、' a'、 'b'、' c'変数を持っています(余分なスペースがあります) –
MC ND CAnあなたはこのコードで私を助けてください。 IF/I "%のpathToJavaの%" == "Y"( \t @echoが を見つけた) ENDLOCAL 一時停止:@ セットpathToJavaは= **あなたの応答を提供 SETLOCAL EnableDelayedExpansionをオフにエコー –