如何编写带 if 条件的内联 Powershell@2 任务脚本?
How can you write an inline Powershell@2 task script with if condition?
我有一个 yaml 管道,任务如下:
- task: PowerShell@2
displayName: Restart my service
inputs:
targetType: 'inline'
script: |
$service = Get-Service | Where-Object{$_.DisplayName -like "My Service"}
if($service)
{
Write-host $service.Name " service is restarting."
Restart-Service $service
}
但是,最后一个“}”被标记为“无法读取块映射条目”的错误。我假设它试图将一些脚本作为管道内容读取,并且不认为它是脚本的一部分。我如何才能将其作为整个内联脚本接受?
看起来这是一个缩进问题。我得到它与以下工作:
if($service) {
Write-host $service.Name " service is restarting."
Restart-Service $service
}
我有一个 yaml 管道,任务如下:
- task: PowerShell@2
displayName: Restart my service
inputs:
targetType: 'inline'
script: |
$service = Get-Service | Where-Object{$_.DisplayName -like "My Service"}
if($service)
{
Write-host $service.Name " service is restarting."
Restart-Service $service
}
但是,最后一个“}”被标记为“无法读取块映射条目”的错误。我假设它试图将一些脚本作为管道内容读取,并且不认为它是脚本的一部分。我如何才能将其作为整个内联脚本接受?
看起来这是一个缩进问题。我得到它与以下工作:
if($service) {
Write-host $service.Name " service is restarting."
Restart-Service $service
}