Blogs‎ > ‎Mi Punto de Vista ...‎ > ‎

Nivel de confirmación

Parte de los scripts que estoy creando para el trabajo involucran la actualizacion de Listas de distribucion en forma automatica.
En esto estaba cuando me tope con el hecho de que el comando Remove-DistribtionListMember me pedia confirmacion antes de remover usuarios, aun cuando yo no habia especificado la opcion -Confirm.

Un vistazo al exchange.ps1 revelo que efectivamente en el ambiente Powershell de exchange, las preferencias de confirmacion estan configuradas por default como HIGH (es decir que va a pedir confirmacion cada vez que se intente realizar un cambio importante en AD)

Cambiar el nivel de confirmacion es tan facil como :

$ConfirmPreference = 'High'
# Los Valores Validos parecen ser High, Medium, Low, None.


Pero no me gustaba la idea de cambiar el seteo para todo el ambiente, quien sabe lo que podria quere correr despues ...

con lo cual decidi usar un simple trasvasado, uso una variable intermedia donde, al principio del script, almaceno el valor actual del $ConfirmPreference, y al final del script usa mi variable intermedia parqa volver el seteo a su valor original


$ConfirmPreference =$OLD_ConfirmPreference

... # Mi código aquí

$OLD_ConfirmPreference =$ConfirmPreference

Despues me puse a pensar en lo genial que seria implementar confirmaciones en mis scripts y decidi que, podia hacerlo facilmente :

Param(
[switch] $Confirm
)

$OLD_ConfirmPreference =$ConfirmPreference
if ($Confirm) {
$ConfirmPreference = 'High'
} else {
$ConfirmPreference = 'None'
}

...... # Mi código aquí

$ConfirmPreference =$OLD_ConfirmPreference



Ahora tengo (y puedo dar a los usuarios de mis scripts) control sobre las confirmaciones de Powershell.

 

 


Estas páginas se generan automaticamente luego de que una entrada se publica en Mi Punto de Vista ...

pero los comentarios NO se replican.

Si usted desea hacer un comentario y rever los comentarios existentes, por favor visite la publicacion original en http://mscosentino.blogspot.com/2008/07/nivel-de-confirmacin.html.

Esta Sección es una réplica de Nivel de confirmación

Publicada originalmente en 30 Jul 2008 a las 06:20:00

Réplica generada en 06 Oct 2012 a las 12:09:25

Etiquetas: Powershell, Cosas que aprendí

Comments