Crear o actualizar una variable de entorno de ruta de acceso
Descripción
En este ejemplo se muestra cómo puede usar el Environment
recurso para asegurarse de que existe una variable de entorno de ruta de acceso con un valor específico.
Con Asegurar establecido en Present
, Nombre establecido TestEnvironmentVariable
en y Valor establecido TestValue
en , el recurso agrega una variable de entorno denominada TestEnvironmentVariable
con el valor TestValue
si no existe.
Con Path establecido $true
en , si TestEnvironmentVariable
existe y no incluye TestValue
, el recurso se anexa TestValue
al valor actual.
Con Target establecido en una matriz con Process
y Machine
, el recurso crea o establece la variable de entorno en los destinos de proceso y máquina.
Con Invoke-DscResource
Este script muestra cómo puede usar el Environment
recurso con el Invoke-DscResource
cmdlet para asegurarse de que TestEnvironmentVariable
está establecido en el proceso y los destinos de la máquina para incluir TestValue
.
[CmdletBinding()]
param()
begin {
$SharedParameters = @{
Name = 'Environment'
ModuleName = 'PSDscResource'
Properties = @{
Name = 'TestPathEnvironmentVariable'
Value = 'TestValue'
Ensure = 'Present'
Path = $true
Target = @(
'Process'
'Machine'
)
}
}
$NonGetProperties = @(
'Value'
'Path'
'Ensure'
)
}
process {
$TestResult = Invoke-DscResource -Method Test @SharedParameters
if ($TestResult.InDesiredState) {
$QueryParameters = $SharedParameters.Clone()
foreach ($Property in $NonGetProperties) {
$QueryParameters.Properties.Remove($Property)
}
Invoke-DscResource -Method Get @QueryParameters
} else {
Invoke-DscResource -Method Set @SharedParameters
}
}
Con una configuración
Este fragmento de código muestra cómo puede definir un Configuration
con un Environment
bloque de recursos para asegurarse de que TestEnvironmentVariable
está establecido en el proceso y los destinos de la máquina para incluir TestValue
.
Configuration CreatePathVariable {
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
Environment ExampleEnvironment {
Name = 'TestPathEnvironmentVariable'
Value = 'TestValue'
Ensure = 'Present'
Path = $true
Target = @(
'Process'
'Machine'
)
}
}
}
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de