Відповіді:
Ви можете просто скористатися методом .NET Framework:
[System.Net.Dns]::GetHostName()
також
$env:COMPUTERNAME
$env:COMPUTERNAMEчудово працює у Windows 10 (зверніть увагу на знак долара на початку)
$env:COMPUTERNAMEне працюватиме на Linux та macOS. Однак [Environment]::MachineNameробить.
Не забувайте, що всі ваші старі утиліти консолі працюють чудово в PowerShell:
PS> hostname
KEITH1
Довга форма:
get-content env:computername
Коротка форма:
gc env:computername
computername- ім'я NetBIOS, яке обмежено 15 символами.
Невеликий твік на відповідь @ CPU-100 для місцевого FQDN:
[System.Net.DNS]::GetHostByName($Null).HostName
У PowerShell Core v6 (працює на macOS, Linux та Windows):
[Environment]::MachineName
[System.Net.Dns]::GetHostName()(не$env:COMPUTERNAME