Evite truncar a mensagem de erro no erro do PowerShell


11

Estou recebendo um erro do PowerShell assim:

PS C:\mydirectory> $Error[0]
Get-WmiObject : 
At line:143 char:13
+           $Disk = Get-WmiObject MSCluster_Disk -ComputerName $Resource.OwnerNode -Auth    ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [Get-WmiObject], COMException
+ FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

Existe uma maneira de evitar que o comando que acionou o erro (ou seja $Disk = Get-WmiObject MSCluster_Disk ...) seja truncado na mensagem de erro?

Respostas:


14

Isso pode ser encontrado no objeto de erro. $Erroré uma matriz de erros e [0]é a mais recente. Na verdade, é um objeto que pode ser interrogado ...

($Error[0]).InvocationInfo.Line

Fornecerá a linha completa no script que gerou o erro. A InvocationInfopropriedade não existirá para erros da linha de comandos.

Outras boas propriedades que você pode obter são: o PSScriptRootque fornece o caminho para o arquivo de script, ScriptNameo nome do arquivo e ScriptLineNumbera linha do script que falhou.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.