powershell - 更改 Powershell 表中第一行的文本颜色
问题描述
如何更改 powershell 表第一行中文本的颜色?
我看过这个
@{"Bob"=1;"John"=3;} | Format-Table @{
Label = "Name"
Expression =
{
if ("John" -eq $_.Name)
{
$color = "32" #green
}
else
{
$color = "0" #white
}
$e = [char]27
"$e[${color}m$($_.Name)${e}[0m"
}
}, Value
但我不确定如何在没有条件的情况下适应它。我希望表格的第一行打印为绿色
解决方案
如果不使用 ANSI 转义码,您可以这样做:
switch -Regex ((@{"Bob"=1;"John"=3} | Format-Table -AutoSize | Out-String) -split '\r?\n' ) {
'^John' { Write-Host $_ -ForegroundColor Green }
default { Write-Host $_ -ForegroundColor White }
}
如果您的意图是始终以不同的颜色写出第一条数据线,您可以这样做
$lines = (@{"Bob"=1;"John"=3} | Format-Table -AutoSize | Out-String).Trim() -split '\r?\n'
for ($i = 0; $i -lt $lines.Count; $i++) {
$color = if ($i -eq 2) { 'Green' } else { 'White' }
Write-Host $lines[$i] -ForegroundColor $color
}
推荐阅读
- javascript - 如何改变深度嵌套的孩子?
- mysql - MySQL 在 select 语句中使用存储过程
- spring-boot - MDC 未将用户名记录到日志中
- vb.net - 从 VB.Net 函数返回两个类
- mysql - 两个laravel项目有三个数据库
- python - 正则表达式匹配并进入 python 列表
- javascript - 将参数传递给函数时将字符串转换为数组
- ruby-on-rails - 如何在视图中访问请求参数并在 ruby on rails 中迭代哈希
- php - facebook 登录图返回错误
- python - Python SQLite3 / 嵌套 cursor.execute