Tworzysz pierwszą linię SETLOCAL
. Ten przykład jest z połączonej artykułu poniżej:
rem *******Begin Comment**************
rem This program starts the superapp batch program on the network,
rem directs the output to a file, and displays the file
rem in Notepad.
rem *******End Comment**************
@echo off
setlocal
path=g:\programs\superapp;%path%
call superapp>c:\superapp.out
endlocal
start notepad c:\superapp.out
Najczęstszym wykorzystanie SETLOCAL
jest włączenie rozszerzeń poleceń i umożliwiają opóźnione rozszerzanie zmiennych:
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
Aby uzyskać więcej informacji na SETLOCAL
zobaczyć Command Line Reference w Microsoft TechNet.
Link bezpośredni do Setlocal
możesz dać ja przykład tego, jak to działa? Jak i dlaczego z niego korzystać? –
Myślę, że pierwsze zdanie połączonej witryny robi to, co jest "Uruchamia lokalizację zmiennych środowiskowych w pliku wsadowym. Lokalizacja jest kontynuowana, dopóki nie zostanie znaleziona zgodna komenda endlocal lub osiągnięty zostanie koniec pliku wsadowego.". Innymi słowy, pozwala ustawić zmienne środowiskowe (które zazwyczaj są globalne) widoczne tylko wewnątrz pliku wsadowego i automatycznie czyści je, gdy wykonywane jest wywołanie 'ENDLOCAL' lub kończy się plik wsadowy. –
Tak, jest to świetny przykład - jeśli chcesz dodać coś do zmiennej 'PATH', ale skrypt musi być uruchamiany wiele razy, możesz zrobić to jak w przykładzie. Nie musisz też czyścić środowiska po swoim skrypcie. IOW, wywołując 'setlocal' przed' SET' cokolwiek, powoduje, że skrypty powłoki systemu Windows zachowują się jak skrypty Bash (które nie mogą zmienić środowiska powłoki nadrzędnej). –