主頁(yè) > 知識(shí)庫(kù) > Windows Powershell 環(huán)境變量

Windows Powershell 環(huán)境變量

熱門標(biāo)簽:電話機(jī)器人公司招聘 六寸地圖標(biāo)注點(diǎn)怎么刪除 騰訊地圖標(biāo)注中心怎么標(biāo)注 如何根據(jù)經(jīng)緯度百度地圖標(biāo)注 萬(wàn)全縣地圖標(biāo)注app 印臺(tái)區(qū)呼叫中心外呼系統(tǒng) 地圖標(biāo)注的圖案 莫拉克電梯系統(tǒng)外呼怎么設(shè)置 新鄭電銷機(jī)器人一個(gè)月多少錢

傳統(tǒng)的控制臺(tái)一般沒(méi)有象Powershell這么高級(jí)的變量系統(tǒng)。它們都是依賴于機(jī)器本身的環(huán)境變量,進(jìn)行操作 。環(huán)境變量對(duì)于powershell顯得很重要,因?yàn)樗w了許多操作系統(tǒng)的細(xì)節(jié)信息。此外,powershell中的變量只存在于powershell內(nèi)部的會(huì)話中,一旦powershell關(guān)閉,這些變量就會(huì)自生自滅。但是如果環(huán)境變量被更新了,它會(huì)繼續(xù)保存在操作系統(tǒng)中,即使其它程序也可以調(diào)用它。

讀取特殊的環(huán)境變量

通過(guò)環(huán)境變量讀取Windows操作系統(tǒng)的安裝路徑,和默認(rèn)應(yīng)用程序的安裝路徑。

PS> $env:windir
C:\Windows
PS> $env:ProgramFiles
C:\Program Files

通過(guò)$env:,這就提示powershell忽略基本的variable:驅(qū)動(dòng)器,而是去環(huán)境變量env:驅(qū)動(dòng)器中尋找變量。為了和其它變量保持一致,powershell環(huán)境變量也可以象其它變量那樣使用。比如你可以把它插入到文本中。

PS> "My computer name $env:COMPUTERNAME"
My computer name MYHome-test-01

查找環(huán)境變量

Powershell把所有環(huán)境變量的記錄保存在env: 虛擬驅(qū)動(dòng)中,因此可以列出所有環(huán)境變量 。一旦查出環(huán)境變量的名字就可以使用$env:name 訪問(wèn)了。

PS> ls env:
Name              Value
----              -----
ALLUSERSPROFILE        C:\ProgramData
APPDATA            C:\User\sv-test\Home\AppData\Roaming
CommonProgramFiles       C:\Program Files\Common Files
COMPUTERNAME          MYHome-test-01
ComSpec            C:\Windows\system32\cmd.exe
FP_NO_HOST_CHECK        NO
HOMEDRIVE           C:
HOMEPATH            Users\v-test\Home

創(chuàng)建新的環(huán)境變量

創(chuàng)建新環(huán)境變量的方法和創(chuàng)建其它變量一樣,只需要指定env:虛擬驅(qū)動(dòng)器即可

PS> $env:TestVar1="This is my environment variable"
PS> $env:TestVar2="Hollow, environment variable"
PS> ls env:Test*

Name              Value
----              -----
TestVar1            This is my environment variable
TestVar2            Hollow, environment variable

刪除和更新環(huán)境變量

在powershell刪除和更新環(huán)境變量和常規(guī)變量一樣。例如要?jiǎng)h除環(huán)境變量中的 windir,

PS> del env:windir
PS> $env:windir
PS>

可以更新環(huán)境變量$env:OS 為linux redhat。

PS> $env:OS
Windows_NT
PS> $env:OS="Redhat Linux"
PS> $env:OS
Redhat Linux

這樣直接操作環(huán)境變量,會(huì)不會(huì)不安全?事實(shí)上很安全,因?yàn)?env:中的環(huán)境變量只是機(jī)器環(huán)境變量的一個(gè)副本,即使你更改了它,下一次重新打開(kāi)時(shí),又會(huì)恢復(fù)如初。(.NET方法更新環(huán)境變量除外)

我們可以將受信任的文件夾列表追加到環(huán)境變量的末尾,這樣就可以直接通過(guò)相對(duì)路徑執(zhí)行這些文件下的文件或者腳本,甚至省略擴(kuò)展名都可以。

PS> md .myscript

  Directory:

Mode        LastWriteTime   Length Name
----        -------------   ------ ----
d----    2011/11/29   18:20      myscript

PS> cd .myscript
PSmyscript> "write-host 'Hollow , Powershell'" > hollow.ps1
PSmyscript> .hollow.ps1
Hollow , Powershell
PSmyscript> cd ..
PS> $env:Path+=";C:PowerShellmyscript"
PS> hollow.ps1
Hollow , Powershell
PS> hollow
Hollow , Powershell

環(huán)境變量更新生效
上述對(duì)于環(huán)境變量的操作只會(huì)影響當(dāng)前powershell會(huì)話,并沒(méi)有更新在機(jī)器上。
.NET方法[environment]::SetEnvironmentvariable操作可以立刻生效。
下面的例子對(duì)當(dāng)前用戶設(shè)置環(huán)境變量,經(jīng)測(cè)試,重新打開(kāi)powershell仍然存在

PS> [environment]::SetEnvironmentvariable("Path", ";c:\powershellscript", "User")
PS> [environment]::GetEnvironmentvariable("Path", "User")
;c:\powershellscript

您可能感興趣的文章:
  • Windows Powershell 自動(dòng)化變量
  • Windows Powershell 變量的作用域
  • Windows Powershell 變量的類型和強(qiáng)類型
  • Windows Powershell 變量的幕后管理
  • Windows Powershell 命令返回?cái)?shù)組

標(biāo)簽:襄陽(yáng) 喀什 天水 臨汾 湘潭 南昌 疫苗接種 汕頭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Windows Powershell 環(huán)境變量》,本文關(guān)鍵詞  Windows,Powershell,環(huán)境,變量,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Windows Powershell 環(huán)境變量》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Windows Powershell 環(huán)境變量的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章