Ignore o erro do executável redirecionando para $ null
O seu executável está enviando a saída para o fluxo STDERR. Você pode suprimi-lo redirecionando-o para a variável $ null automática:
nslookup.exe example.com 2>$null
Notas:
-
Você deve redirecionar para a variável
$null
do PowerShell. O PS não permite que você faça da maneira antiga (por exemplo,2>nul
). -
Redirecionar para
$null
é mais rápido do que usarOut-Null
Explicação
O NSLookup está enviando uma parte de sua saída para o fluxo STDERR . Sempre que um aplicativo de console do Windows faz isso, o PowerShell relata isso como um erro NativeCommandError .
No Prompt de Comando, execute nslookup -q=SOA superuser.com 1>nul 2>con
para ver o que o NSLookup está escrevendo para o STDERR:
Non-authoritative answer:
Isso é exatamente que o PowerShell retorna na primeira linha de sua mensagem de erro:
nslookup : Non-authoritative answer:
At line:1 char:1
+ nslookup -q=ns example.com
Aparentemente, o NSLookup retorna um erro quando sua resposta inclui registros de um servidor de nomes não autoritativo. No entanto, no seu caso, isso não parece ser um problema, portanto você pode ignorar o erro conforme descrito acima.