Por que Resolve-DnsName
não é reconhecido por PowerShell Core
? Tanto quanto me lembro, funciona bem consigo PowerShell
mesmo.
Isso é um problema .NET
versus dotnet
? Isso dotnet
simplesmente não tem essa funcionalidade?
thufir@dur:~/powershell/webservicex$
thufir@dur:~/powershell/webservicex$ dotnet --version
2.1.4
thufir@dur:~/powershell/webservicex$
thufir@dur:~/powershell/webservicex$ ./dns.ps1
Resolve-DnsName : The term 'Resolve-DnsName' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At /home/thufir/powershell/webservicex/dns.ps1:3 char:1
+ Resolve-DnsName -Name localhost -Type ANY | Format-Table -AutoSize
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Resolve-DnsName:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
thufir@dur:~/powershell/webservicex$
thufir@dur:~/powershell/webservicex$ cat dns.ps1
#!/usr/bin/pwsh -Command
Resolve-DnsName -Name localhost -Type ANY | Format-Table -AutoSize
thufir@dur:~/powershell/webservicex$
Na documentação O que há de novo no PowerShell Core 6.0 , na seção "Compatibilidade com versões anteriores":
Embora o Powershell Core seja GA, ainda é um trabalho em andamento.
Existe um módulo de plataforma cruzada chamado
DnsClient-PS
, e o nome do comando nesse módulo éResolve-Dns
. Funciona um pouco diferente deResolve-DnsName
:Para que o cmdlet
Resolve-DnsName
funcione no PS 6, você deve primeiro importá-lo ou instalá-lo.Você pode primeiro tentar
Install-Module -Name DnsClient
. Ele usará seu gerenciador de pacotes padrão para baixá-lo do psgallery e instalá-lo.Então,
Import-Module -Name "DnsClient"
para puxá-lo.Seu
Resolve-DnsName
cmdlet deve então funcionar.Você também pode usar os vários parâmetros
Test-NetConnection
para resolver dentro do módulo NetTCPIP.