我有以下问题:
当我使用时:
Get-Service -Name CcmExec -ErrorAction silentlycontinue
我得到以下列表:
Status Name DisplayName
------ ---- -----------
Running CcmExec SMS Agent Host
或
Status Name DisplayName
------ ---- -----------
Stopped CcmExec SMS Agent Host
当我使用
时$service = Get-Service -Name CcmExec -ErrorAction silentlycontinue -ComputerName $Computername
write-host "$service"
我只看到ccmexec但不是“正在运行”或“停止”。
答案 0 :(得分:2)
如果你想要从Write-Host
看到的是你可以使用的状态:
Write-Host $service.Status
或者你可以这样做:
Write-Host "$($service.Name) is $($service.Status)"
评论中提供的代码存在一些问题。首先,您使用多个if
语句,而不是if
,elseif
和/或else
。 (您也可以使用switch statement。)其次,它实际上与Running
和$null
匹配,因为您正在使用-match
代替{ {1}}。试试这个:
eq
您可以获得有关PowerShell的比较运算符here的更多详细信息。