endlocal
Komenda endlocal
umożliwia w skryptach wsadowych do zakończenia lokalnego zakresu zmiennych środowiskowych. Umożliwia przywrócenie stanu zmiennych sprzed wywołania polecenia setlocal
, co pozwala kontrolować zmiany środowiska w obrębie skryptu.
Składnia
Dział zatytułowany „Składnia”endlocal
- Polecenie nie przyjmuje parametrów ani przełączników.
- Stosowane wyłącznie w skryptach wsadowych, w parze z
setlocal
.
Przykłady użycia
Dział zatytułowany „Przykłady użycia”@echo offset VAR=Globalna
echo Przed setlocal: %VAR%setlocalset VAR=Lokalna
echo Wewnątrz setlocal: %VAR%endlocalecho Po endlocal: %VAR%
W tym przykładzie wartość zmiennej VAR
po zakończeniu lokalnego zakresu powraca do wartości globalnej.
endlocal
zawsze kończy najbliższy aktywny bloksetlocal
. Jeślisetlocal
nie został wcześniej wywołany, polecenie nie ma efektu.- Pozwala zachować porządek w skryptach, aby zmienne i ustawienia środowiska nie zmieniały globalnego kontekstu.
- Jest wbudowaną komendą CMD i nie wymaga dodatkowych plików wykonywalnych.
Najczęściej spotykane błędy i jak je naprawić
Dział zatytułowany „Najczęściej spotykane błędy i jak je naprawić”Błąd / Komunikat | Przyczyna | Rozwiązanie |
---|---|---|
Brak zmian po endlocal | Nie było aktywnego bloku setlocal | Upewnij się, że setlocal został wcześniej użyty |
Zmienna nie wraca do poprzedniej wartości | Zmienna została nadpisana poza blokiem setlocal | Sprawdź strukturę skryptu i umiejscowienie zmiennych |