ENDLOCAL: Avslutar lokalisering av miljöändringar i en kommandofil.


... Exemplen för kommandot "ENDLOCAL"
... "ENDLOCAL" Utdrag från Microsoft Windows Hjälp
... Viktig information, tips för kommandot "ENDLOCAL"

Kommandot: "ENDLOCAL" är på Windows 11, 10, .. tillgänglig

Exemplen för kommandot "ENDLOCAL"

De`ENDLOCAL`kommandot används i Windows kommandotolk för att avsluta lokala miljövariabler som är associerade med`SETLOCAL`kommando inleddes. Här är några exempel: Exempel 1: Starta och stoppa lokal miljö:

@ECHO OFF
SETLOCAL
SET Name=John
ECHO Inom närmiljön: %Name%
ENDLOCAL
ECHO Utanför närområdet: %Name%

Beskrivning: Detta exempel börjar en lokal miljö med`SETLOCAL`, definierar en lokal variabel (`Name`), skriver ut värdet i och utanför den lokala miljön och lämnar sedan den lokala miljön med`ENDLOCAL`. Exempel 2: Använda ENDLOCAL i en loop:

@ECHO OFF
FOR /L %%A IN (1, 1, 3) DO (
    SETLOCAL
    SET Counter=%%A
    ECHO Inne i slingan: %Counter%
    ENDLOCAL
)
ECHO Utanför slingan: %Counter%

Beskrivning: Här är`SETLOCAL`används inom en loop för att skapa en lokal miljö.`ENDLOCAL`avslutar sedan den lokala miljön i slutet av varje loopiteration. Exempel 3: Lokal miljö med returvärde:

@ECHO OFF
CALL :LocalFunction
ECHO Utan funktion: %ReturnValue%
GOTO :EOF

:LocalFunction
SETLOCAL
SET ReturnValue=Detta är ett returvärde
ENDLOCAL & SET ReturnValue=%ReturnValue%
GOTO :EOF

Beskrivning: En funktion (`:LocalFunction`) skapad med hjälp av en lokal miljö`SETLOCAL`börjar och med`ENDLOCAL`Jag skickade. Returvärdet används utanför funktionen. Exempel 4: Använda ENDLOCAL i en batchfil:

@ECHO OFF
CALL :Start
ECHO Utan funktion: %GlobalVariable%
GOTO :EOF

:Start
SETLOCAL
SET GlobalVariable=det här är en globale Variable
CALL :InnerFunction
ENDLOCAL & SET GlobalVariable=%GlobalVariable%
GOTO :EOF

:InnerFunction
SET LocalVariable=Detta är en lokal Variable
ECHO Inuti funktionen: %LocalVariable%
GOTO :EOF

Beskrivning: Här är`SETLOCAL`i huvudfunktionen (`:Start`) används för att skapa en lokal miljö. I denna funktion en underfunktion (`:InnerFunction`) ringde.`ENDLOCAL`används i huvudfunktionen för att lämna den lokala miljön samtidigt som värdet på den globala variabeln uppdateras. De`ENDLOCAL`uttalandet avslutar den lokala miljön och återställer miljövariablerna till värdet före`SETLOCAL`-Kommando. Om du vill använda en miljövariabel från den lokala miljön utanför detta bör du göra det direkt`ENDLOCAL`do. Observera att lokala variabler inte är tillgängliga utanför deras lokala miljö.

"ENDLOCAL" Utdrag från Microsoft Windows Hjälp

Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.

C:\\Windows>

Avslutar lokala inställningar av miljövariabler i en kommandofil.
Ändringar som görs efter ENDLOCAL är inte lokala för
kommandofilen. De gamla inställningarna återställs inte
när kommandofilen är slut.

ENDLOCAL

Om kommandotilläggen är aktiverade ändras kommandot ENDLOCAL 
enligt följande:

Om det matchande kommandot SETLOCAL har aktiverat eller 
inaktiverat
kommandotilläggen med hjälp av de nya alternativen 
ENABLEEXTENSIONS och
DISABLEEXTENSIONS, kommer ENDLOCAL att återställa tillståndet för
kommandotilläggen till vad det var innan kommandot SETLOCAL 
kördes.

Viktig information, tips för kommandot "ENDLOCAL"

När du använder`ENDLOCAL`kommandot i Windows kommandotolk finns det några viktiga punkter att notera: 1. Lokala variabler: `ENDLOCAL`avslutar en lokal miljö och alla lokala variabler som skapats i den miljön kasseras. Dessa variabler är enligt`ENDLOCAL`inte längre tillgänglig utanför den lokala miljön. 2. Returvärden: Om du vill använda värden från en lokal miljö utanför denna måste du göra det omedelbart efter`ENDLOCAL`- Gör kommando. Exempel:

SETLOCAL
SET LocalVar=Hallå
ENDLOCAL & SET OutsideVar=%LocalVar%

3. Inkapslade`SETLOCAL`/`ENDLOCAL`: Om du`SETLOCAL`används flera gånger i en batchfil, var och en bör`SETLOCAL`från en motsvarande`ENDLOCAL`följas. Varje`ENDLOCAL`slutar den närmaste`SETLOCAL`-Instruktion. 4. Variabelärvning: Variabler som skapats i en lokaliserad miljö ärvs inte till överordnade miljöer. Lokala miljöer är vanligtvis bara synliga för den aktuella batchprocessen. 5. Utförandeorder: `ENDLOCAL`utförs i den ordning som`SETLOCAL`kallades. Det betyder att den sista lokaliserade miljön kommer först`ENDLOCAL`Jag skickade. 6. Batchfiler och funktioner: I batchfiler används ofta lokaliserade miljöer i funktioner. När du avslutar en funktion, a`ENDLOCAL`utförs om inte funktionen användes`GOTO :EOF`eller`EXIT /B`lämna. I detta fall är det lämpligt att ange manuellt`ENDLOCAL`tillägga. 7. Använd i loopar: Om du`SETLOCAL`i en loop skapas en ny lokal miljö varje gång loopen körs. Se till att du`ENDLOCAL`korrekt för att säkerställa att de lokala variablerna släpps efter behov.

FOR /L %%A IN (1, 1, 3) DO (
    SETLOCAL
    SET LocalVar=Hallå
    ECHO %LocalVar%
    ENDLOCAL
)

8. Processresurser: Användningen av`SETLOCAL`och`ENDLOCAL`kan hjälpa till att spara processresurser, särskilt när många variabler definieras och används i en batchfil. Genom att begränsa omfattningen av variabler till specifika kodavsnitt kan minnesresurser användas mer effektivt. Sammanfattningsvis är det viktigt`SETLOCAL`och`ENDLOCAL`användas noggrant för att säkerställa att variabler hanteras korrekt och lokaliserade miljöer hanteras korrekt. Detta är särskilt relevant i komplexa batchskript eller funktioner.


Deutsch
English
Español
Français
Italiano
日本語 (Nihongo)
한국어 (Hangugeo)
汉语 (Hànyǔ)
Türkçe
Português
Português
Svenska
Norsk
Dansk
Suomi
Nederlands
Polski









Windows-10


... Windows 10 FAQ
... Windows 10 How To


Windows 10 How To


... Windows 11 How To
... Windows 10 FAQ



Kommando ENDLOCAL - Avslutar lokalisering av miljöändringar i en kommandofil.

HTTP: ... console/sv/026.htm
0.124
17325

Workplace, This PC and computer, where is the difference?

Set the standard boot operating system for Windows 11 PCs!

Can I continue to use the Text Snippet Tool on Windows 11?

Immer im Windows Infobereich starten, geht das?

How do I increase the speed of the HDD (SSD / HD)?

Install Windows 11 on a standard hard drive?



(0)