亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

cmd SETLOCAL使用介紹

 更新時(shí)間:2024年06月09日 12:59:10   投稿:mdxy-dxy  
SETLOCAL在bat中經(jīng)常用作臨時(shí)改變系統(tǒng)變量,以方便批處理的運(yùn)行,但當(dāng)ENDLOCAL后我們可以看到他又被還原成了系統(tǒng)的默認(rèn)路徑

SETLOCAL

在 cmd (Windows 命令提示符) 腳本中,@setlocal 是一個(gè)常用的組合命令,由兩部分組成:@ 和 setlocal。

@:在腳本中,@ 用于阻止命令的顯示。通常,在執(zhí)行批處理文件時(shí),每一行命令都會(huì)被顯示出來(lái)。當(dāng)你在一行命令前加上 @,這行命令就不會(huì)在命令提示符窗口中顯示出來(lái)。這經(jīng)常用于使腳本的輸出更加干凈、整潔。

setlocal:這是一個(gè)命令,它開始局部化環(huán)境更改。通常在批處理文件中使用,以確保在腳本中所做的任何環(huán)境更改(例如設(shè)置或修改環(huán)境變量)不會(huì)影響到調(diào)用此批處理的上下文或其他批處理文件。當(dāng)腳本執(zhí)行完畢,使用 endlocal 命令可以結(jié)束這種局部環(huán)境,恢復(fù)所有的環(huán)境設(shè)置到 setlocal 之前的狀態(tài)。

因此,@setlocal 的組合用途是在批處理文件的開始部分使環(huán)境更改局部化,同時(shí)不顯示這條命令本身。這是編寫批處理腳本時(shí)的一種常見做法,以確保腳本不會(huì)無(wú)意中修改全局環(huán)境設(shè)置。

下面是幫助文檔

C:\Documents and Settings\Administrator>setlocal /?
開始批處理文件中環(huán)境改動(dòng)的本地化操作。在執(zhí)行 SETLOCAL 之后
所做的環(huán)境改動(dòng)只限于批處理文件。要還原原先的設(shè)置,必須執(zhí)
行 ENDLOCAL。達(dá)到批處理文件結(jié)尾時(shí),對(duì)于該批處理文件的每個(gè)
尚未執(zhí)行的 SETLOCAL 命令,都會(huì)有一個(gè)隱含的 ENDLOCAL 被執(zhí)行。

SETLOCAL

如果命令擴(kuò)展名被啟用,SETLOCAL 會(huì)如下改變:

SETLOCAL 批命令現(xiàn)在可以接受可選參數(shù):
ENABLEEXTENSIONS / DISABLEEXTENSIONS
啟動(dòng)或停用命令處理器擴(kuò)展名。詳細(xì)信息,請(qǐng)參閱 CMD /?。
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
啟動(dòng)或停用延緩環(huán)境變量擴(kuò)展名。詳細(xì)信息,請(qǐng)
參閱 SET /? 。
無(wú)論在 SETLOCAL 命令之前它們的設(shè)置是什么,這些修改會(huì)一直
保留到匹配的 ENDLOCAL 命令。

如果有一個(gè)參數(shù),SETLOCAL 命令將設(shè)置 ERRORLEVEL 的值。
如果有兩個(gè)有效參數(shù)中的一個(gè),該值則為零。用下列技巧,您
可以在批腳本中使用這個(gè)來(lái)決定擴(kuò)展名是否可用:

VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo Unable to enable extensions

這個(gè)方法之所以有效,是因?yàn)樵?CMD.EXE 的舊版本上,SETLOCAL
不設(shè)置 ERRORLEVEL 值。具有不正確參數(shù)的 VERIFY 命令將
ERRORLEVEL 值初始化成非零值。

開始批處理文件中環(huán)境改動(dòng)的本地化操作。在執(zhí)行 SETLOCAL 之后所做的環(huán)境改動(dòng)只限于批處理文件。要還原原先的設(shè)置,必須執(zhí)行 ENDLOCAL。 達(dá)到批處理文件結(jié)尾時(shí),對(duì)于該批處理文件的每個(gè)尚未執(zhí)行的 SETLOCAL 命令,都會(huì)有一個(gè)隱含的 ENDLOCAL 被執(zhí)行。

例:

@ECHO OFF
SET PATH /*察看環(huán)境變量PATH
PAUSE
SETLOCAL
SET PATH=E:\TOOLS /*重新設(shè)置環(huán)境變量PATH
SET PATH
PAUSE
ENDLOCAL
SET PATH

從上例我們可以看到環(huán)境變量PATH第1次被顯示得時(shí)候是系統(tǒng)默認(rèn)路徑。被設(shè)置成了E:\TOOLS后顯示為E:\TOOLS,但當(dāng)ENDLOCAL后我們可以看到他又被還原成了系統(tǒng)的默認(rèn)路徑。但這個(gè)設(shè)置只在該批處理運(yùn)行的時(shí)候有作用。當(dāng)批處理運(yùn)行完成后環(huán)境變量PATH將會(huì)還原。

相關(guān)文章

最新評(píng)論