как получить имя хоста из powershell?

Как получить имя хоста для dur из powershell?

PS /home/thufir/powershell> 
PS /home/thufir/powershell> ./hostname.ps1                                                                              
google.com
localhost
PS /home/thufir/powershell> 
PS /home/thufir/powershell> cat ./hostname.ps1                                                                          
$hosts = ("google.com", "localhost")

foreach($i in $hosts) {
  $fqdn = [System.Net.Dns]::GetHostEntry($i).HostName
  write-host $fqdn
}
PS /home/thufir/powershell> 
PS /home/thufir/powershell> hostname                                                                                    
dur
PS /home/thufir/powershell> 

Полное доменное имя для системы на самом деле dur.bounceme.net, что было бы предпочтительным выходом.


person Thufir    schedule 15.02.2018    source источник
comment
Обычно переменная окружения $env:Computername содержит имя хоста. Я не уверен, что эта переменная также работает в Linux (у меня нет виртуальной машины Linux с установленным на ней Powershell, чтобы проверить это на данный момент)   -  person bluuf    schedule 15.02.2018


Ответы (1)


Спасибо bluuf за то, что направил меня на правильный путь:

PS /home/thufir/powershell> 
PS /home/thufir/powershell> [System.Net.Dns]::GetHostByName((hostname)).HostName                                        
dur.bounceme.net
PS /home/thufir/powershell> 
PS /home/thufir/powershell> hostname                                                                                    
dur
PS /home/thufir/powershell> 
person Thufir    schedule 15.02.2018
comment
Работает ли он и для Windows, чтобы получить имя хоста? Так и должно быть, смотрите правую ссылку на трек.. - person Timo; 08.06.2021