Las variables de entorno son una parte esencial del sistema operativo. Almacenan información diversa como la ruta de los archivos y carpetas del sistema, la cantidad de procesadores del sistema en ejecución, los detalles del usuario actual y más. Los procesos y programas utilizan estas variables de entorno para recuperar los datos para su ejecución.
Las variables de entorno en PowerShell se almacenan como unidad PS (Env:). Para recuperar todas las variables de entorno almacenadas en el sistema operativo, puede utilizar el siguiente comando.
Get-ChildItem -Path Env:
Name Value ---- ----- ALLUSERSPROFILE C:ProgramData APPDATA C:UsersdeltaAppDataRoaming CommonProgramFiles C:Program FilesCommon Files CommonProgramFiles(x86) C:Program Files (x86)Common Files CommonProgramW6432 C:Program FilesCommon Files COMPUTERNAME TEST1-WIN2K12 ComSpec C:Windowssystem32cmd.exe FP_NO_HOST_CHECK NO HOMEDRIVE C: HOMEPATH Usersdelta LOCALAPPDATA C:UsersdeltaAppDataLocal LOGONSERVER \ADDC NUMBER_OF_PROCESSORS 1 OS Windows_NT Path C:Windowssystem32;C:Windows;C:WindowsSystem32 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
También puedes usar dir env: comando para recuperar todas las variables y valores de entorno.
Para recuperar una variable de entorno específica, proporcione el nombre de la variable después env:
PS C:Windowssystem32> Get-ChildItem -Path Env:SystemDrive Name Value ---- ----- SystemDrive C:
Si se muestran varios valores para la variable de entorno, puede separar los valores mediante la operación Dividir. Por ejemplo,
$env:PSModulePath -split ';'
Producción:
C:UsersdeltaDocumentsWindowsPowerShellModules C:Program FilesWindowsPowerShellModules C:Windowssystem32WindowsPowerShellv1.0Modules
También puede utilizar el método de clase .NET [System.Environment] para recuperar las variables de entorno específicas o todas. Para recuperar todas las variables de entorno, utilice la clase GetEnvironmentVariables ().
Por ejemplo,
PS C:Windowssystem32> [System.Environment]::GetEnvironmentVariables() Name Value ---- ----- COMPUTERNAME TEST1-WIN2K12 USERPROFILE C:Usersdelta HOMEPATH Usersdelta LOCALAPPDATA C:UsersdeltaAppDataLocal PSModulePath C:UsersdeltaDocumentsWindowsPowerShellModules PROCESSOR_ARCHITECTURE AMD64 Path C:Windowssystem32;C:Windows;C:WindowsSystem32 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
Para obtener la variable de entorno específica usando el método .Net, use el método GetEnvironmentVariable ().
PS C:Windowssystem32> [System.Environment]::GetEnvironmentVariable('appdata') C:UsersdeltaAppDataRoaming
Consulte el enlace a continuación para conocer todas las propiedades y métodos compatibles con la clase de sistema de entorno.
https://docs.microsoft.com/en-us/dotnet/api/system.environment?view=netcore-3.1
Si marca el enlace anterior, el GetEnvironmentVariable El método admite múltiples argumentos.
GetEnvironmentVariable(String, EnvironmentVariableTarget)
Podemos pasar la variable de entorno como una cadena y Máquina como el EnvironmentVariableTarget en el ejemplo siguiente.
[System.Environment]::GetEnvironmentVariable('PSModulePath', 'Machine')
Producción:
C:Program FilesWindowsPowerShellModules;C:WINDOWSsystem32WindowsPowerShell v1.0Modules
Publicado el 05-Oct-2020 06:59:01