2011-07-11 14 views
11

Creo que Write-Progress es un Cmdlet bastante bello. De hecho, Sharepoint lo utiliza con su commandlet Start-SPAdminJob.¿Cómo se oculta un mensaje de progreso de Powershell?

Todo bien y excelente, el problema es que Start-SPAdminJob no "elimina" correctamente el diálogo de Progreso de escritura. Nunca está configurado al 100 por ciento de su capacidad, lo que significa que permanece en el cuadro de diálogo de Powershell hasta que sale del script; esto a su vez oculta parte de los mensajes debajo de la "ventana de progreso".

¿Hay alguna manera de forzar que un Write-Progress existente "salga" o se configure al 100%? De cualquier forma, podría averiguar el ID del progreso que está usando el cmdlet Start-SPAdminJob, de esa manera podría establecer manualmente el porcentaje.

Respuesta

16

usted podría parar la barra de progreso que aparece en el primer lugar de la siguiente antelación:

$ProgressPreference = "SilentlyContinue"; 

A continuación, puede restaurar la preferencia a "Continuar" después. No ayuda mucho si realmente se desea que la barra por supuesto ...

+0

Cuidado que me ilumine cómo conocer este mágico ? No sabía que solo podía establecer ProgressPreference ... ¿Hay más switches secretos? :) –

+3

@moontear mira la preferencia 'Get-Variable *' Listará todas las variables de preferencia. – stej

+3

aún mejor: get-help about_preference_variables – x0n

4

Esta barra de progreso código obliga a estar ajustado al 100% y lo oculta:

Write-Progress "Done" "Done" -completed 
+1

si yo era el que comenzaba la barra de progreso, esta pregunta era especial si un tercero comenzaba una barra de progreso y necesitaba cerrarla de alguna manera –

Cuestiones relacionadas