Masquer les progrès de la Invoke-WebRequest
Comment puis-je masquer l'affichage de la progression de Invoke-WebRequest
? Je fais beaucoup de demandes successives et d'avoir mon propre Write-Progress
écran que j'utilise, donc je n'ai pas besoin de la intégré dans un popping up en dessous à chaque fois.
- Je utiliser le mshtml résultats (IE COM object) qui sont créés à partir de la suite de Invoke-WebRequest
automatiquement, donc je ne peux pas passer à un WebClient
ou quelque chose comme ça, à moins que quelqu'un donne des instructions sur la façon d'obtenir un mshtml objet à partir d'une requête WebClient.
- Noter que le rendement est de l'ordre de grandeur de mieux lorsqu'on se cache la progressbar. J'ai été en attente pendant quelques minutes jusqu'à ce que j'ai annulé <300 MO de téléchargement. Lorsqu'il est éteint, barre de progression, il a achevé en l'espace de quelques secondes. Connexes: barre de Progression peuvent considérablement affecter la cmdlet performance
Vous devez vous connecter pour publier un commentaire.
Utiliser le $progressPreference variable. Il doit avoir une valeur de "Continuer" par défaut, sauf si vous avez éditée ailleurs, qui dit Powershell pour afficher la barre de progression. Puisque vous avez mentionné que vous avez votre propre progression personnalisée affiche, je voudrais réinitialiser immédiatement après l'applet de commande est exécutée. Par exemple:
Plus d'informations sur les variables de préférence à about_preference_variables. Voici l'entrée de $ProgressPreference:
$global:progressPreference = 'silentlyContinue'
si vous communiquez à d'autres blocs de script.$oldProgressPreference = $progressPreference; $progressPreference = 'SilentlyContinue';
et plus tard$progressPreference = $oldProgressPreference
permettra en outre de conserver le paramètre précédent qui peut améliorer la cohérence lors de la liaison de scripts.