如何使用 PowerShell 獲取環境變數的值?
環境變數是作業系統的重要組成部分。它們儲存各種資訊,例如系統檔案和資料夾的路徑、系統執行的處理器數量、當前使用者詳細資訊等等。程序和程式利用這些環境變數來檢索其執行所需的資料。
PowerShell 中的環境變數儲存為 PS 驅動器 (Env: )。要檢索作業系統中儲存的所有環境變數,可以使用以下命令。
Get-ChildItem -Path Env:
Name Value ---- ----- ALLUSERSPROFILE C:\ProgramData APPDATA C:\Users\delta\AppData\Roaming CommonProgramFiles C:\Program Files\Common Files CommonProgramFiles(x86) C:\Program Files (x86)\Common Files CommonProgramW6432 C:\Program Files\Common Files COMPUTERNAME TEST1-WIN2K12 ComSpec C:\Windows\system32\cmd.exe FP_NO_HOST_CHECK NO HOMEDRIVE C: HOMEPATH \Users\delta LOCALAPPDATA C:\Users\delta\AppData\Local LOGONSERVER \ADDC NUMBER_OF_PROCESSORS 1 OS Windows_NT Path C:\Windows\system32;C:\Windows;C:\Windows\System32 \Wbem PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;. MSC;. PROCESSOR_ARCHITECTURE AMD64 PROCESSOR_IDENTIFIER Intel64 Family 6 Model 126 Stepping 5, GenuineInte
您也可以使用 **dir env:** 命令來檢索所有環境變數及其值。
要檢索特定的環境變數,請在 **env:** 後提供變數名稱。
PS C:\Windows\system32> Get-ChildItem -Path Env:\SystemDrive Name Value ---- ----- SystemDrive C:
如果環境變數顯示多個值,則可以使用 Split 操作來分隔值。例如,
$env:PSModulePath -split ';'
輸出
C:\Users\delta\Documents\WindowsPowerShell\Modules C:\Program Files\WindowsPowerShell\Modules C:\Windows\system32\WindowsPowerShell\v1.0\Modules
您還可以使用 [System.Environment] 類的 .NET 方法來檢索特定或所有環境變數。要檢索所有環境變數,請使用 GetEnvironmentVariables() 類。
例如,
PS C:\Windows\system32> [System.Environment]::GetEnvironmentVariables() Name Value ---- ----- COMPUTERNAME TEST1-WIN2K12 USERPROFILE C:\Users\delta HOMEPATH \Users\delta LOCALAPPDATA C:\Users\delta\AppData\Local PSModulePath C:\Users\delta\Documents\WindowsPowerShell\Modules PROCESSOR_ARCHITECTURE AMD64 Path C:\Windows\system32;C:\Windows;C:\Windows\System32 \Wbem CommonProgramFiles(x86) C:\Program Files (x86)\Common Files ProgramFiles(x86) C:\Program Files (x86) PROCESSOR_LEVEL 6 LOGONSERVER \ADDC PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;. MSC;.CPL
要使用 .Net 方法獲取特定的環境變數,請使用 GetEnvironmentVariable() 方法。
PS C:\Windows\system32> [System.Environment]::GetEnvironmentVariable('appdata')
C:\Users\delta\AppData\Roaming請參閱以下連結以獲取所有環境系統類支援的屬性和方法。
https://docs.microsoft.com/en-us/dotnet/api/system.environment?view=netcore-3.1
如果您檢視上面的連結,**GetEnvironmentVariable** 方法支援多個引數。
GetEnvironmentVariable(String, EnvironmentVariableTarget)
在下面的示例中,我們可以將環境變數作為字串傳遞,並將 **Machine** 作為 **EnvironmentVariableTarget** 傳遞。
[System.Environment]::GetEnvironmentVariable('PSModulePath', 'Machine')輸出
C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\ v1.0\Modules
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP