次のような複数行の IF ブロックを使用する .cmd ファイル (Windows XP) があります。
IF DEFINED SUMM (
echo %SUMM% >> %OutFile%
echo ---- >> %OutFile%
) ELSE (
echo No summary >> %OutFile%
)
問題は、環境変数 %SUMM% に閉じ括弧が含まれ、その後にテキストが含まれている場合に発生します。例えば:
SET SUMM=(Hello world) Here's some more text.
次に、SUMM の ')' が IF コマンド ブロックの閉じ括弧として扱われ、エラーが生成されると仮定します。
この時は予想外でした。
これを回避する方法はありますか?) がコマンド ブロックの一部ではなく、文字列の一部として扱われるようにするにはどうすればよいですか?