コマンド: "ENDLOCAL" がオンです Windows 12, 11, 10, .. , MS Server 2025, 2022, 2019, .. 利用可能
コマンドの例 "ENDLOCAL"
の
`ENDLOCAL`このコマンドは、Windows コマンド プロンプトで、に関連付けられたローカル環境変数を終了するために使用されます。
`SETLOCAL`コマンドが開始されました。ここではいくつかの例を示します。
例 1: ローカル環境の起動と停止:
@ECHO OFF
SETLOCAL
SET Name=John
ECHO ローカル環境内で: %Name%
ENDLOCAL
ECHO 地元エリア外: %Name%
説明:この例では、ローカル環境を次のように起動します。
`SETLOCAL`、ローカル変数を定義します (
`Name`)、ローカル環境の内外の値を出力し、次のコマンドでローカル環境を終了します。
`ENDLOCAL`。
例 2: ループ内での ENDLOCAL の使用:
@ECHO OFF
FOR /L %%A IN (1, 1, 3) DO (
SETLOCAL
SET Counter=%%A
ECHO ループの内側: %Counter%
ENDLOCAL
)
ECHO ループの外側: %Counter%
説明:ここにあります
`SETLOCAL`ローカル環境を作成するためにループ内で使用されます。
`ENDLOCAL`その後、各ループ反復の終了時にローカル環境を終了します。
例 3: 戻り値を含むローカル環境:
@ECHO OFF
CALL :LocalFunction
ECHO 機能停止中: %ReturnValue%
GOTO :EOF
:LocalFunction
SETLOCAL
SET ReturnValue=これは戻り値です
ENDLOCAL & SET ReturnValue=%ReturnValue%
GOTO :EOF
説明:関数 (
`:LocalFunction`) ローカル環境を使用して作成
`SETLOCAL`始まりと
`ENDLOCAL`送りました。戻り値は関数の外で使用されます。
例 4: バッチ ファイルでの ENDLOCAL の使用:
@ECHO OFF
CALL :Start
ECHO 機能停止中: %GlobalVariable%
GOTO :EOF
:Start
SETLOCAL
SET GlobalVariable=これは globale Variable
CALL :InnerFunction
ENDLOCAL & SET GlobalVariable=%GlobalVariable%
GOTO :EOF
:InnerFunction
SET LocalVariable=これは地元のものです Variable
ECHO 関数内: %LocalVariable%
GOTO :EOF
説明:ここにあります
`SETLOCAL`メイン関数内 (
`:Start`) ローカル環境の作成に使用されます。この関数にはサブ関数 (
`:InnerFunction`)と呼ばれる。
`ENDLOCAL`main 関数で使用され、グローバル変数の値を更新しながらローカル環境を終了します。
の
`ENDLOCAL`ステートメントはローカル環境を終了し、環境変数を前の値にリセットします。
`SETLOCAL`-指示。これ以外のローカル環境の環境変数を使用したい場合は、直接使用する必要があります。
`ENDLOCAL`する。ローカル変数はローカル環境の外では使用できないことに注意してください。
"ENDLOCAL" Microsoft Windows ヘルプからの抜粋
Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.
C:\\WINNT>
バッチ ファイルの環境変更のローカル化を終了します。
ENDLOCAL を実行した後で変更した環境設定はバッチ ファイル固有の設定で
はありません。バッチ ファイルを終了しても前の設定は復元されません。
ENDLOCAL
コマンド拡張機能を有効にすると、ENDLOCAL は次のように変更されます:
対応する SETLOCAL が新しい ENABLEEXTENSIONS または DISABLEEXTENSIONS
オプションを使ってコマンド拡張機能を有効または無効にしている場合は、
ENDLOCAL を実行した後、コマンド拡張機能の有効または無効の状態は対応
する SETLOCAL コマンドを実行する前の状態に復元されます。
重要な情報、"ENDLOCAL" コマンドのヒント
を使用するときは、
`ENDLOCAL`Windows コマンド プロンプトでコマンドを使用する場合、注意すべき重要な点がいくつかあります。
1.
ローカル変数: `ENDLOCAL`ローカル環境を終了し、その環境で作成されたローカル変数はすべて破棄されます。これらの変数は次のとおりです。
`ENDLOCAL`ローカライズされた環境以外では利用できなくなりました。
2.
戻り値:これ以外のローカル環境の値を使用したい場合は、直後にそうする必要があります。
`ENDLOCAL`-コマンドを実行します。例:
SETLOCAL
SET LocalVar=こんにちは
ENDLOCAL & SET OutsideVar=%LocalVar%
3.
ネストされた`SETLOCAL`/`ENDLOCAL`:もし、あんたが
`SETLOCAL`バッチ ファイル内で複数回使用される場合は、それぞれを使用する必要があります。
`SETLOCAL`対応するものから
`ENDLOCAL`フォローされる。それぞれ
`ENDLOCAL`最も近いものを終了します
`SETLOCAL`-命令。
4.
変数の継承:ローカライズされた環境で作成された変数は、親環境には継承されません。ローカル環境は通常、現在のバッチ プロセスにのみ表示されます。
5.
実行順序: `ENDLOCAL`の順序で実行されます
`SETLOCAL`と呼ばれていました。これは、最後にローカライズされた環境が最初に来ることを意味します
`ENDLOCAL`送りました。
6.
バッチ ファイルと関数:バッチ ファイルでは、ローカライズされた環境が関数でよく使用されます。関数を終了すると、
`ENDLOCAL`関数が使用されない限り実行される
`GOTO :EOF`または
`EXIT /B`離れる。この場合は手動で入力することをお勧めします
`ENDLOCAL`たす。
7.
ループ内で使用する:`SETLOCAL`ループでは、ループが実行されるたびに新しいローカル環境が作成されます。必ず確認してください
`ENDLOCAL`ローカル変数が必要に応じて確実に解放されるように正しく設定してください。
FOR /L %%A IN (1, 1, 3) DO (
SETLOCAL
SET LocalVar=こんにちは
ECHO %LocalVar%
ENDLOCAL
)
8.
プロセス リソース:の使用
`SETLOCAL`そして
`ENDLOCAL`特に多くの変数がバッチ ファイルで定義および使用されている場合に、プロセス リソースの節約に役立ちます。変数の範囲をコードの特定のセクションに制限すると、メモリ リソースをより効率的に使用できるようになります。
まとめると、重要なことは、
`SETLOCAL`そして
`ENDLOCAL`変数が適切に処理され、ローカライズされた環境が適切に管理されるように、慎重に使用してください。これは、複雑なバッチ スクリプトまたは関数に特に関係します。