我在文本文件中有一个服务列表。我正在使用Get-Content中的那个,如下所示。但它从文件服务时不起作用。当只使用get-service Service *并使用下面的代码时,它可以工作。请帮我修改代码并进行更改。 设置服务行和 if条件行 .Status和.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."
}
}
注意:我尝试使用**使单词加粗,但不会发生在代码
中答案 0 :(得分:2)
您必须使用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."
}
}