У меня есть список серверов, для них я использую команды Resolve -DnsName
, эта команда имеет разные параметры, и для получения всех данных, которые мне нужны (NS, MX, CNAME, A) записи, мне нужно выполнить несколько команд.
У меня есть список с 3 столбцами, мне нужно добавить еще один столбец с
Я бы поместил это в один ForEach
и
при получении нескольких результатов для одного поля -Join
them
## Q:\Test\2018\09\21\SF_932023.ps1
$servers = get-content "C:\Users\Olehsa\Desktop\ttt.txt"
$result = foreach ($server in $servers) {
[PSCustomObject]@{
Server = $server
NameHost = ((Resolve-DnsName -Name $server -Type NS -DnsOnly).NameHost|Sort) -Join ', '
NameExchange = ((Resolve-DnsName -Name $server -Type MX -DnsOnly).NameExchange|Sort) -Join ', '
Strings = ((Resolve-DnsName -Name $server -Type TXT).Strings) -Join ', '
}
}
$result|fl
Пример вывода:
Server : google.com
NameHost : ns1.google.com, ns2.google.com, ns3.google.com, ns4.google.com
NameExchange : alt1.aspmx.l.google.com, alt2.aspmx.l.google.com, alt3.aspmx.l.google.com, alt4.aspmx.l.google.com, aspmx.l.google.com
Strings : docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e, facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95, v=spf1 include:_spf.google.com ~all