Если мы посмотрим на справку на основе комментариев для команды Get-Service, то увидим, что параметр Computername будет принимать массив.
Get-Help -Full Get-Service
PARAMETERS -ComputerName String [] Получает службы, работающие на указанных компьютерах. По умолчанию используется локальный компьютер.
Введите имя NetBIOS, IP-адрес или полное доменное имя (FQDN) удаленного компьютера. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) Или localhost.
Этот параметр не зависит от удаленного взаимодействия Windows PowerShell. Вы можете использовать параметр ComputerName в Get-Service, даже если ваш компьютер не настроен для запуска удаленных команд.
Попробуйте следующее:
function Query-Service
{
[CmdletBinding()]
param
(
[Parameter()]
[ValidateScript( { Test-Connection -ComputerName $_ -Quiet -Count 1 })]
[ValidateNotNullOrEmpty()]
[string[]]$ComputerName = $env:COMPUTERNAME
)
Get-Service -Name KService -ComputerName $ComputerName | Select-Object "MachineName", "Name", "Status"
}