无法获取服务 Powershell 的状态

Not able to get status of service powershell

我在一个文本文件中有一个服务列表。我正在使用 Get-Content 中的它,如下所示。但它在从文件中获取服务时不起作用。当仅使用 get-service Service* 并使用下面的代码时,它就可以工作。请帮我修复代码的变化。 Set-Service 行和 if 条件 行作为 。状态和 .Name 不工作

$TEST= Get-Content "Somelocation\service.txt"

foreach ($service in $TEST )
{

    if($**service.Status** -eq "Stopped")
    {
              Set-Service $**service.Name** -StartupType Manual
              "Starting  $service"
              start-service $service -WarningAction SilentlyContinue

    }
    else
    {
        "$service was already started."
    }
}

注意:我尝试使用 ** 将单词设为粗体,但在代码中没有出现

您必须使用 Get-Service cmdlet 检索服务实例才能查询状态:

$TEST= Get-Content "Somelocation\service.txt"

foreach ($service in $TEST )
{
    $serviceInstance = Get-Service $service
    if($serviceInstance.Status -eq "Stopped")
    {
              Set-Service $service -StartupType Manual
              "Starting  $service"
              $serviceInstance.Start()
    }
    else
    {
        "$service was already started."
    }
}