Estou tentando ver se um processo está sendo executado em vários servidores e formatá-lo em uma tabela.
get-process -ComputerName server1,server2,server3 -name explorer | Select-Object processname,machinename
Essa é a parte fácil - quando o processo não existe ou o servidor não está disponível, o powershell gera um grande erro feio, estraga a mesa e não continua. Exemplo
Get-Process : Couldn't connect to remote machine.At line:1 char:12 + get-process <<<< -ComputerName server1,server2,server3 -name explorer | format-table processname,machinename
+ CategoryInfo : NotSpecified: (:) [Get-Process], InvalidOperatio nException + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.Power Shell.Commands.GetProcessCommand
Como contornar isso? Se eu ainda gostaria de ser notificado se o processo não estiver disponível ou Em execução.
powershell
Jake
fonte
fonte
get-process
ou dê uma olhada na minha resposta atualizada acima.Resposta curta: adicione
$ErrorActionPreference = 'SilentlyContinue'
no início do seu código para não precisar adicionar-ErrorAction SilentlyContinue
a todos os comandosResposta longa: https://www.gitbook.com/book/devopscollective/the-big-book-of-powershell-error-handling/details
fonte
$ErrorActionPreference = ‘SilentlyContinue’