出力を取得するには、 を使用できますcall echo You entered %%A%I%%%
。
ただし、 & や | などの特殊文字が 問題を引き起こすことはありません:echo You entered !A%I%!
遅延展開を使用するには、 で有効にする必要がありますsetlocal enableDelayedExpansion
。
役に立つヒント 1 -@echo off
スクリプトの先頭に置きます。@
その後、次のコマンドで使用する必要はありません。
役立つヒント 2 - SET /P を使用する前に、既存の変数値を明示的にクリアする必要があります。まだ定義されていないことを確認することはできません。<Enter>
ユーザーが何も入力せずに単に押すと、既存の値が保持されます。
I
役に立つヒント 3 -変数さえ必要ありません。%1
どこにいても、パラメータを簡単に使用できます%I%
。
役立つヒント 4 - さらに良いことに、サブルーチンを呼び出す必要さえありません。
@echo off
setlocal enableDelayedExpansion
for /L %%X in (1,1,10) do (
set "A%%X="
set /P "A%%X=SET A%%X to? "
echo You entered !A%%X!
)
endlocal