我想用一个语句输出许多不同的前景色。
PS C:\> Write-Host "Red" -ForegroundColor Red
Red
该输出为红色。
PS C:\> Write-Host "Blue" -ForegroundColor Blue
Blue
该输出是蓝色的。
PS C:\> Write-Host "Red", "Blue" -ForegroundColor Red, Blue
Red Blue
此输出是洋红色,但我希望通过一个命令将红色一词的颜色设为红色,将蓝色一词的颜色设为蓝色。我怎样才能做到这一点?
您可以使用自己的 Write-Color 命令或查找可更改颜色的内联标记的命令。这就是 ANSI 转义序列在 BBS 时代的工作原理。
但你可以通过这样做来实现你想要的:
Write-Host "Red " -f red -nonewline; Write-Host "Blue " -f blue;
这是一个简单的小函数,可以满足您的要求。
function Write-Color([String[]]$Text, [ConsoleColor[]]$Color) {
for ($i = 0; $i -lt $Text.Length; $i++) {
Write-Host $Text[$i] -Foreground $Color[$i] -NoNewLine
}
Write-Host
}
Write-Color -Text Red,White,Blue -Color Red,White,Blue
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)