Aracılığıyla paylaş


yerel ayar başlat

Bir toplu iş dosyasında ortam değişkenlerinin yerelleştirilmesini başlatır. Yerelleştirme, eşleşen bir endlocal komutuyla karşılaşılana veya toplu iş dosyasının sonuna ulaşılana kadar devam eder.

Sözdizimi

setlocal [enableextensions | disableextensions] [enabledelayedexpansion | disabledelayedexpansion]

Parametreler

Parametre Açıklama
EnableExtensions setlocal komutu çalıştırılmadan önceki ayardan bağımsız olarak eşleşen endlocal komutuyla karşılaşılana kadar komut uzantılarını etkinleştirir.
Uzantıları devre dışı bırak setlocal komutu çalıştırılmadan önceki ayardan bağımsız olarak eşleşen endlocal komutuyla karşılaşılana kadar komut uzantılarını devre dışı bırakır.
Enabledelayedexpansion setlocal komutu çalıştırılmadan önceki ayardan bağımsız olarak eşleşen endlocal komutuyla karşılaşılana kadar gecikmeli ortam değişkeni genişletmesini etkinleştirir.
disabledelayedexpansion setlocal komutu çalıştırılmadan önceki ayardan bağımsız olarak eşleşen endlocal komutuyla karşılaşılana kadar gecikmeli ortam değişkeni genişletmesini devre dışı bırakır.
/? Komut isteminde yardım görüntüler.

Açıklamalar

  • Bir betiğin veya toplu iş dosyasının dışında setlocal kullanırsanız, bunun hiçbir etkisi olmaz.

  • Toplu iş dosyası çalıştırdığınızda ortam değişkenlerini değiştirmek için setlocal kullanın. setlocal çalıştırıldıktan sonra yapılan ortam değişiklikleri toplu iş dosyasında yereldir. Cmd.exe programı, bir endlocal komutuyla karşılaştığında veya toplu iş dosyasının sonuna ulaştığında önceki ayarları geri yükler.

  • Toplu iş programında birden fazla setlocal veya endlocal komutuna (iç içe komutlar) sahip olabilirsiniz.

  • setlocal komutu ERRORLEVEL değişkenini ayarlar. {enableextensions | disableextensions} veya {enabledelayedexpansion | disabledelayedexpansion} geçirirseniz ERRORLEVEL değişkeni 0 (sıfır) olarak ayarlanır. Aksi takdirde, 1 olarak ayarlanır. Aşağıdaki örnekte gösterildiği gibi, uzantıların kullanılabilir olup olmadığını belirlemek için bu bilgileri toplu iş betiklerinde kullanabilirsiniz:

    verify other 2>nul
    setlocal enableextensions
    if errorlevel 1 echo Unable to enable extensions
    

    komut uzantıları devre dışı bırakıldığında cmd ERRORLEVEL değişkenini ayarlamadığından, doğrula komutu errorlevel değişkenini geçersiz bir bağımsız değişkenle kullandığınızda sıfır olmayan bir değere başlatır. Ayrıca, setlocal komutunu {enableextensions | disableextensions} veya {enabledelayedexpansion | disabledelayedexpansion} bağımsız değişkenleriyle kullanırsanız ve ERRORLEVEL değişkenini 1olarak ayarlamazsanız, komut uzantıları kullanılamaz.

Örnekler

Bir toplu iş dosyasındaki ortam değişkenlerini yerelleştirmek için şu örnek betiği izleyin:

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