Imagen: iStock/SARINYAPINNGAM

Te sientas esperando pacientemente. Mirando con esperanza la pantalla de una consola mientras el cursor parpadea repetidamente. Escribió el comando o ejecutó su secuencia de comandos como lo ha hecho innumerables veces antes, y aunque funcionó en el pasado, esta vez la pantalla solo permanece mientras el comando se ejecuta al revés, plan, y todavía se pregunta si funciona. . Si tan solo hubiera una manera de saberlo con seguridad (pista: la hay).

VER: Política de respuesta a incidentes (Premium de TechRepublic)

¿Cuántas veces nos ha pasado a todos este escenario? Probablemente demasiados para contar. Microsoft ha considerado importante proporcionar a los usuarios y administradores el estado de progreso cuando se ejecutan comandos y scripts mediante la inclusión de dos cmdlets para Microsoft PowerShell (PS). Estos indicadores se pueden integrar en scripts existentes para proporcionar información sobre el estado de un proceso.

Nota: El propósito de este artículo es familiarizar al guionista con los cmdlets y darle una idea de cómo se puede combinar cada uno con los scripts existentes. La forma en que se unan y el éxito dependerán de la complejidad de la trama y de las habilidades de programación del autor. Como ocurre con todo en la informática, hay muchas maneras de hacer algo. Solo necesita encontrar lo que funciona mejor para usted y su organización.

Índice
  • Escritura detallada
  • progreso de la escritura
  • Escritura detallada

    Este cmdlet único es simple pero efectivo para proporcionar una actualización de estado mínima, a menudo depende de la inclusión de una sola línea en el script para cada función para la que desea actualizarse.

    Fuerza: Esto funciona con la mayoría de los scripts. Se puede incluir como una sola línea de código o varias líneas de código únicas, una para cada actualización de estado.

    La debilidad: Su simplicidad también se extiende a su capacidad de salida. A menudo, se imprime una sola línea en la pantalla como una actualización de estado. No proporciona una barra de progreso o un porcentaje de progreso de forma nativa.

    Usar:

    Write-Verbose -Message "Status Update: Command 01 Completed" 

    progreso de la escritura

    Este es el método más sólido y, a menudo, el preferido para enviar actualizaciones a PS Experts. Este método puede incluirse como unas pocas líneas de código, envolverse como una función para usarse repetidamente en una secuencia de comandos o combinarse con variables para minimizar la duplicación de código.

    Fuerza: La cantidad de información proporcionada al usuario o administrador es la principal ventaja de este cmdlet. Puede crear una barra de progreso para mostrar un porcentaje completo incluso para cmdlets múltiples o anidados. La segunda es la capacidad de envolver esto en una función para referencia en cmdlets futuros o varias veces en el mismo script. Es especialmente útil para hacer bucles, como ejecutar procesos en varios objetos.

    La debilidad: La base de código más grande y la flexibilidad hacen que esto sea un poco más complejo de integrar en los scripts existentes. Dependiendo del propósito del autor, este cmdlet puede ser un poco excesivo en algunos casos. El anidamiento a través de identificadores funciona bien, pero nuevamente la complejidad podría romper la funcionalidad del script existente si no se prueba a fondo.

    Usar:

    for ($i = 0; $i -le 100; $i++ ) { Write-Progress -Activity "Perform Specific Task" -Id 1 -Status "$i% Complete:" -PercentComplete $i; }