我想要折叠这些PowerShell命令:
将上面的
$colour = ""
$colour1 = "Red"
$colour2 = "Green"
if ($var -eq 0) {
# failure
$colour = $colour1
} Else {
# success
$colour = $colour2
}
Write-Host ("Answer = " + $var) -ForegroundColor $colour
将上面的
if
表达式的输出作为Write-Host
的输入参数,合并成一行,类似于:Write-Host ("Answer = " + $var) -ForegroundColor &{if ($var -eq 0) {'Red'} else {'Green'}
我尝试过但失败了的事情:
Write-Host ("Answer = " + $var) -ForegroundColor &{if ($var -eq 0) {'Red'} else {'Green'}
Write-Host ("Answer = " + $var) -ForegroundColor `&{if ($var -eq 0) {'Red'} else {'Green'}`
Write-Host ("Answer = " + $var) -ForegroundColor `{if ($var -eq 0) {'Red'} else {'Green'}`
Write-Host ("Answer = " + $var) -ForegroundColor &`{if ($var -eq 0) {'Red'} else {'Green'}`
Write-Host ("Answer = " + $var) -ForegroundColor (&`{if ($var -eq 0) {'Red'} else {'Green'}`)
Write-Host ("Answer = " + $var) -ForegroundColor `{if ($var -eq 0) {return 'Red'} else {return 'Green'}`
Write-Host ("Answer = " + $var) -ForegroundColor `&{if ($var -eq 0) {return 'Red'} else {return 'Green'}`
Write-Host ("Answer = " + $var) -ForegroundColor `&{if ($var -eq 0) {return "Red"} else {return "Green"}`
Write-Host ("Answer = " + $var) -ForegroundColor &{if ($var -eq 0) {return "Red"} else {return "Green"}
Write-Host ("Answer = " + $var) -ForegroundColor &{if ($var -eq 0) {return "Red"} else {return "Green"}}
Write-Host ("Answer = " + $var) -ForegroundColor `&{if ($var -eq 0) {return "Red"} else {return "Green"}}`
Write-Host ("Answer = " + $var) -ForegroundColor &`{if ($var -eq 0) {return "Red"} else {return "Green"}}`
Write-Host ("Answer = " + $var) -ForegroundColor `{if ($var -eq 0) {return "Red"} else {return "Green"}}`
Write-Host ("Answer = " + $var) -ForegroundColor `if ($var -eq 0) {return "Red"} else {return "Green"}`
-ForegroundColor
(缺少e
),所以参数名称无法识别,-ForgroundColor
被视为另一个位置参数来打印。换句话说:您的问题是偶然的,而这个答案仍然适用。 - undefined