Как вы скрываете сообщение о прогрессе Powershell?

Я думаю, Write-Progress - довольно красивое Командлет. На самом деле Sharepoint использует его с Start-SPAdminJob commandlet.

Все прекрасное и денди, проблема в том, что Start-SPAdminJob не правильно "распоряжается" диалоговым окном "Write-Progress". Он никогда не устанавливается на 100 процентов, что означает, что он просто остается в диалоговом окне Powershell, пока вы не выйдете из script - это, в свою очередь, скрывает часть сообщений под "окном прогресса".

Есть ли способ заставить существующий Write-Progress "выйти" или установить 100%? В любом случае, как я мог узнать идентификатор выполнения командлета Start-SPAdminJob - таким образом, я мог бы вручную установить процент.

Ответ 1

Вы можете остановить индикатор выполнения в первую очередь, предварительно сделав следующее:

$ProgressPreference = "SilentlyContinue";

Затем вы можете восстановить предпочтение "Продолжить". Не очень помогает, если вы действительно хотите, конечно, бар...

Ответ 2

Этот код заставляет индикатор выполнения быть установлен на 100% завершен и скрывает его:

Write-Progress "Done" "Done" -completed