Иногда надо запретить вывод сообщений об ошибках в скриптах powershell. Настройка параметров вывода сообщений производится с помощью переменных ErrorAction и WarningAction, которым можно задать значения (SilentlyContinue, Continue, Inquire и Stop). В многих случаях добавление к параметрам коммандлета -ErrorAction SilentlyContinue позволяет избавиться от надоедливых сообщений. Однако, что же делать, когда это не помогает и сообщения продолжают появляться?
Такая ситуация возможна с коммандлетами, специфичными для приложений. Например - Microsoft Exchange.
Я столкнулся с нескрываемыми ошибками при выполнении Set-Mailbox. Довольно длительное гугление привело меня сюда: https://stackoverflow.com/questions/26137379/suppress-powershell-output-messages
А там приведен рецепт - перенаправление вывода таким вот образом:

*>&1 | out-null

В результате нежелательные сообщения (да все сообщения в принципе) отправляются в $null.

Enter your comment. Wiki syntax is allowed:
E D​ V E T
 
  • ms_windows_ms_sql/powershell_supress_messages.txt
  • Last modified: 2019/02/11 09:13
  • (external edit)