回答:
SET
グローバル環境変数を設定します。スクリプトの実行後も保持されます。
例を見てみましょう。
まず、変数をクリアして、存在しないことを確認します。
C:\Users\Oliver\Desktop>set TEST=
簡単なテスト:
C:\Users\Oliver\Desktop>echo %TEST%
%TEST%
そのバッチファイルを作成して実行します。
C:\Users\Oliver\Desktop>echo set TEST=something>test.bat
C:\Users\Oliver\Desktop>test.bat
C:\Users\Oliver\Desktop>set TEST=something
.bat
ファイルの実行後にTESTの値を見てみましょう。
C:\Users\Oliver\Desktop>echo %TEST%
something
そのため、はい、スクリプトの最後で変数をクリアすることをお勧めします。
さらに良いのは、問題全体を使用SETLOCAL
しENDLOCAL
て回避することです。
ここで、and .bat
を使用する新しいファイルを作成しました:SETLOCAL
ENDLOCAL
C:\Users\Oliver\Desktop>type test.bat
setlocal
set TEST=something
endlocal
クリアTEST
してエコーして、クリーンな状態で開始するようにします。
C:\Users\Oliver\Desktop>set TEST=
C:\Users\Oliver\Desktop>echo %TEST%
%TEST%
さて、新しいものを実行しましょう.bat
:
C:\Users\Oliver\Desktop>test.bat
C:\Users\Oliver\Desktop>setlocal
C:\Users\Oliver\Desktop>set TEST=something
C:\Users\Oliver\Desktop>endlocal
今TEST
は空のままです:
C:\Users\Oliver\Desktop>echo %TEST%
%TEST%