如何列出远程计算机上运行的服务器的启动类型?

时间:2017-01-26 16:26:20

标签: powershell

我试图找出在远程计算机上运行的服务的启动类型。

我已经尝试过以下但是它给了我启动模式而不是启动类型。

[cmdletbinding()]            

 param(            
 [string[]]$Service,            
 [switch]$Disabled,            
 [switch]$Automatic,            
 [switch]$Manual,            
 [string]$ComputerName = $env:ComputerName            
 )            
 foreach($Ser in $Service) {            
 try {            
  $Obj = Get-WmiObject -Class Win32_Service -Filter "Name='$Ser'"-ComputerName $ComputerName -ErrorAction Stop            
  $Obj | select Name, DisplayName, StartMode            
 } catch {            
  Write-Error " Failed to get the information. More details: $_"            
 }            
}



.\Get-ServiceStartupType.ps1 –Service wscsvc –ComputerName Computername

服务是" wscsvc"安全中心

2 个答案:

答案 0 :(得分:1)

您需要使用Get-Service代替Get-WmiObject

$svc = Get-Service wscsvc
$svc.StartType

在您的代码中使用:

$Obj = Get-Service $Ser -ComputerName $ComputerName -ErrorAction Stop            
$Obj | select Name, DisplayName, StartType

答案 1 :(得分:1)

如果您使用

Get-Service -name $ser -computername $computername | select-object Name,StartType

而不是get-wmiobject。我还使用了管道而不是变量来使代码更清晰。