Leer en inglés

Compartir a través de


about_Environment_Provider

Nombre del proveedor

Medio ambiente

Unidades

Env:

Capacidades

ShouldProcess

Descripción breve

Proporciona acceso a las variables de entorno de Windows.

Descripción detallada

El proveedor de entorno de PowerShell le permite obtener, agregar, cambiar y eliminar variables y valores de entorno en PowerShell.

Las variables Environment son variables de nombre dinámico que describen el entorno en el que se ejecutan sus programas. Windows y PowerShell usan variables de entorno para almacenar información persistente que afecte a la ejecución del sistema y del proceso. A diferencia de las variables de PowerShell, las variables de entorno no están sujetas a restricciones de ámbito.

La unidad Environment es un espacio de nombres plano que contiene las variables de entorno específicas de la sesión del usuario actual. Las variables Environment no tienen elementos hijo.

El proveedor Environment admite los siguientes cmdlets, que se tratan en este artículo.

Tipos expuestos por este proveedor

Cada variable de entorno es una instancia de la clase System.Collections.DictionaryEntry. El nombre de la variable es la clave de diccionario. El valor de la variable de entorno es el valor del diccionario.

El proveedor Environment expone su almacén de datos en la unidad Env:. Para trabajar con variables de entorno, cambie la ubicación a la unidad de Env: (Set-Location Env:) o trabaje desde otra unidad de PowerShell. Para hacer referencia a una variable de entorno desde otra ubicación, utilice el nombre de la unidad Env: en la ruta de acceso.

PowerShell
Set-Location Env:

Para volver a una unidad del sistema de archivos, escriba el nombre de la unidad. Por ejemplo, escriba:

PowerShell
Set-Location C:

También puede trabajar con el proveedor de Environment desde cualquier otra unidad de PowerShell. Para hacer referencia a una variable de entorno desde otra ubicación, utilice el nombre de la unidad Env: en la ruta de acceso.

El proveedor Environment también expone variables de entorno utilizando un prefijo de variable de $env:. El comando siguiente ve el contenido de la variable de entorno ProgramFiles. El prefijo de variable $env: se puede usar desde cualquier unidad de PowerShell.

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

También puede cambiar el valor de una variable de entorno mediante el prefijo de variable $env:. Los cambios realizados solo se aplican a la sesión actual de PowerShell mientras esté activa.

Nota

PowerShell utiliza los alias para permitirle trabajar con rutas de acceso de los proveedores de una manera familiar. Los comandos como dir y ls ahora son alias para Get-ChildItem, cd es un alias para Set-Location y pwd es un alias para Get-Location.

Obtención de variables de entorno

Este comando enumera todas las variables de entorno de la sesión actual.

PowerShell
Get-Item -Path Env:

Puede usar este comando desde cualquier unidad de PowerShell.

El proveedor de entorno no tiene contenedores, por lo que el comando anterior tiene el mismo efecto cuando se usa con Get-ChildItem.

PowerShell
Get-ChildItem -Path Env:

Obtener una variable de entorno seleccionada

Este comando obtiene la variable de entorno WINDIR.

PowerShell
Get-ChildItem -Path Env:windir

También puede utilizar el formato de prefijo de variable.

PowerShell
$env:windir

Creación de una variable de entorno

Este comando crea la variable de entorno USERMODE con un valor de "Non-Admin". El valor del parámetro -Path crea el nuevo elemento en la unidad Env:. La nueva variable de entorno solo se puede usar en la sesión actual de PowerShell siempre que esté activa.

PowerShell
PS C:\> New-Item -Path Env: -Name USERMODE -Value Non-Admin

Cambio de una variable de entorno

Cambiar el nombre de una variable de entorno

Este comando utiliza el cmdlet Rename-Item para cambiar a USERMODEel nombre de la variable de entorno USERROLE que usted creó. No cambie el nombre de una variable de entorno que usa el sistema. Aunque estos cambios afectan solo a la sesión actual, podrían provocar que el sistema o un programa funcionen incorrectamente.

PowerShell
Rename-Item -Path Env:USERMODE -NewName USERROLE

Cambio de una variable de entorno

Este comando usa el cmdlet Set-Item para cambiar el valor de la variable de entorno de USERROLE a "Administrador".

PowerShell
Set-Item -Path Env:USERROLE -Value Administrator

Copia de una variable de entorno

Este comando copia el valor de la variable de entorno USERROLE en la variable de entorno USERROLE2.

PowerShell
Copy-Item -Path Env:USERROLE -Destination Env:USERROLE2

Eliminación de una variable de entorno

Este comando elimina la variable de entorno USERROLE2 de la sesión actual.

PowerShell
Remove-Item -Path Env:USERROLE2

Eliminación de una variable de entorno con Clear-Item

Este comando elimina la variable de entorno USERROLE borrando su valor.

PowerShell
Clear-Item -Path Env:USERROLE

Uso de la canalización

Los cmdlets del proveedor aceptan entradas de canalización. Puede usar la canalización para simplificar las tareas mediante el envío de datos del proveedor de un cmdlet a otro cmdlet del proveedor. Para obtener más información sobre cómo usar la canalización con los cmdlets del proveedor, consulte las referencias de los cmdlets que se encuentran a lo largo de este artículo.

Obtener ayuda

A partir de Windows PowerShell 3.0, puede obtener temas de ayuda personalizados para los cmdlets del proveedor que explican cómo se comportan esos cmdlets en una unidad de disco del sistema de archivos.

Para obtener los temas de ayuda personalizados para la unidad del sistema de archivos, ejecute un comando Get-Help en una unidad del sistema de archivos o use el parámetro -Path de Get-Help para especificar una unidad del sistema de archivos.

PowerShell
Get-Help Get-ChildItem
PowerShell
Get-Help Get-ChildItem -Path env:

Consulte también