set

2018-11-06 10:38 更新

set [[/a [expression]] [/p [variable=]] string]


參數(shù)

/a 

將 string 設(shè)置成可求值的數(shù)字表達式。 

/p 

將 variable 的值設(shè)置成輸入行。 

variable 

指定需要設(shè)置或修改的變量。 

string 

指定要與指定變量關(guān)聯(lián)的字符串。 

/? 

在命令提示符顯示幫助。 

注釋

使用“恢復(fù)控制臺”中的 set 

set 命令具有不同的參數(shù),可從“恢復(fù)控制臺”中獲得。


使用特殊字符 

字符 < > | & ^ 是特殊命令外殼字符,在字符串中使用時必須位于 escape 字符 (^) 之前或用引號引起來(即,"StringContaining&Symbol")。如果要使用引號將含有特殊字符的字符串引起來,則該引號將被設(shè)置成環(huán)境變量值的一部分。


使用環(huán)境變量 

使用環(huán)境變量可控制某些批處理文件和程序的操作,并可控制 Windows XP 和 MS-DOS 子系統(tǒng)顯示和工作的方式。Autoexec.nt 文件中經(jīng)常使用 set 命令設(shè)置環(huán)境變量。


顯示當(dāng)前的環(huán)境設(shè)置 

當(dāng)只鍵入 set 命令時,將顯示當(dāng)前的環(huán)境設(shè)置。這些設(shè)置通常包含用來幫助查找磁盤上程序的 COMSPEC 和 PATH 環(huán)境變量。Windows XP 使用的兩個其它環(huán)境變量是 PROMPT 和 DIRCMD。


使用參數(shù) 

當(dāng)指定變量和字符串的值時,指定的變量值將被添加到該環(huán)境,而且該字符串與該變量關(guān)聯(lián)。如果環(huán)境中已經(jīng)存在該變量,新的字符串值將替代舊的字符串值。


如果只為 set 命令指定一個變量和一個等號(沒有字符串),則與該變量關(guān)聯(lián)的字符串值將被清除(就象變量根本不存在一樣)。


使用 /a 

下表按優(yōu)先性從高到低的順序列出了支持 /a 的運算符。


運算符 執(zhí)行的操作 

< > 分組 

* / % + - 算法 

<< >> 邏輯移位 

& 按位“和”運算 

^ 按位“異或”運算 

| 按位“或”運算 

= *= /= %= += -= &= ^= |= <<= >>= 分配 

, 表達式分隔符 


如果使用邏輯 (&& ||) 或模 (%) 運算符,請使用引號將表達式字符串引起來。表達式中的非數(shù)字字符串將被視為環(huán)境變量名,其值將轉(zhuǎn)化成數(shù)字然后才進行處理。如果指定當(dāng)前環(huán)境中沒有定義的環(huán)境變量名,將會分配零值,允許您對環(huán)境變量進行算術(shù)運算,而不需要使用 % 找回值。


如果從命令腳本外的命令行中運行 set /a,則會顯示該表達式的最終值。


數(shù)值是指十進制的數(shù)字,在前綴加 0× 則表示十六進制數(shù)字,加 0 則表示八進制數(shù)字。因此,0×2 與 18 相同,也與 022 相同,八進制表示法容易引起混淆。例如,08 和 09 不是有效數(shù)字,因為 8 和 9 不是有效的八進制數(shù)字。


使用 /p 

要求有提示字符串。


支持延遲的環(huán)境變量擴展 

已經(jīng)添加延遲的環(huán)境變量擴展支持。默認情況下禁用該支持,不過可使用 cmd /v 對其啟用或禁用。


使用命令擴展 

當(dāng)啟用命令擴展(默認)并單獨運行 set 時,將顯示所有當(dāng)前的環(huán)境變量。如果使用一個值來運行 set,則會顯示與該值匹配的變量。


在批處理文件中使用 set 

創(chuàng)建批處理文件時,可以使用 set 命令創(chuàng)建變量,然后象使用編號變量 %0 到 %9 一樣使用這些變量。也可以使用 %0 到 %9 變量作為 set 命令的輸入。


從批處理文件調(diào)用 set 變量。 

從批處理文件調(diào)用變量值時,必須將該值用百分號(%)括起來。例如,如果批處理程序創(chuàng)建了一個環(huán)境變量 BAUD,則可以在命令行中鍵入 %baud%,將與 BAUD 關(guān)聯(lián)的字符串作為可替換參數(shù)使用。


范例

若要設(shè)置名為 TEST^1 的環(huán)境變量,請鍵入:


set testVar=test^^1


若要設(shè)置名為 TEST&1 的環(huán)境變量,請鍵入:


set testVar=test^&1


Set 將變量值設(shè)置成等號 (=) 后的內(nèi)容。如果鍵入:


set testVar="test^1"


將得到如下結(jié)果: 

testVar="test^1"


要設(shè)置名為 INCLUDE 的環(huán)境變量,使字符串 C:\Inc(驅(qū)動器 C 上的 \Inc 目錄)與該變量關(guān)聯(lián),請鍵入: 


set include=c:\inc 


然后可以通過用在名稱百分號 (%) 將 INCLUDE 括起,在批處理文件中使用字符串 C:\Inc。例如,可能在批處理文件中包含以下命令,以顯示與 INCLUDE 環(huán)境變量關(guān)聯(lián)的目錄內(nèi)容。


dir %include% 


處理此命令時,字符串 C:\Inc 將替代 %include%。


還可以在批處理程序中使用 set,將新目錄添加到 PATH 環(huán)境變量中。例如:


@echo off 

rem ADDPATH.BAT adds a new directory 

rem to the path environment variable. 

set path=%1;%path% 

set 


當(dāng)啟用命令表達式(默認)并使用一個值來運行 set 時,則會顯示與該值匹配的變量。例如,如果在命令提示符鍵入 set p,將得到如下結(jié)果:


Path=C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem

PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

PROCESSOR_ARCHITECTURE=x86

PROCESSOR_IDENTIFIER=x86 Family 6 Model 8 Stepping 1, GenuineIntel

PROCESSOR_LEVEL=6

PROCESSOR_REVISION=0801

ProgramFiles=C:\Program Files

PROMPT=$P$G 


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號