2011-07-11 2 views
11

Je pense que Write-Progress est une Cmdlet plutôt belle. En fait Sharepoint s'en sert avec son commandlet Start-SPAdminJob. Tout va bien et dandy, le problème est que Start-SPAdminJob ne "dispose" pas correctement de la boîte de dialogue Write-Progress. Il n'est jamais défini à 100%, ce qui signifie qu'il reste dans la boîte de dialogue Powershell jusqu'à ce que vous quittiez le script - ce qui masque une partie des messages sous la "fenêtre de progression".Comment cacher un message de progression Powershell?

Y a-t-il un moyen de forcer un Write-Progress existant à "quitter" ou être réglé à 100% complet? De toute façon comment je pourrais trouver l'ID de la progression que la cmdlet Start-SPAdminJob utilise - de cette façon, je pourrais définir manuellement le pourcentage.

Répondre

16

Vous pouvez arrêter la barre de progression qui apparaît en premier lieu en procédant comme suit au préalable:

$ProgressPreference = "SilentlyContinue"; 

Vous pouvez ensuite restaurer la préférence à « Continuer » par la suite. Pas beaucoup d'aide si vous voulez vraiment la barre bien sûr ...

+0

soin de me éclairer la façon dont vous connaissez cette magie ? Je ne savais pas que je peux simplement définir ProgressPreference ... Y a-t-il plus de commutateurs secrets? :) –

+3

@moontear regarde 'Get-Variable * preference' Il listera toutes les variables de préférence. – stej

+3

encore mieux: get-help about_preference_variables – x0n

4

Cette barre forces de code de progression à régler à 100% complet et le cache:

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

il fait si j'étais celui qui commence la barre de progression - cette question était un spécial où un tiers a commencé une barre de progression et je devais la fermer en quelque sorte –

Questions connexes