gpt4 book ai didi

powershell - 有没有办法在使用写输出时指定字体颜色

转载 作者:行者123 更新时间:2023-12-03 13:29:48 25 4
gpt4 key购买 nike

我有一个 powershell 脚本,它通过写输出提供一些状态输出。我故意不使用写主机,因为输出可能会被捕获并写入日志文件,如下所示:

./myscript.ps1 | out-file log.txt

但是如果输出没有被重定向,那么在控制台上有彩色输出会很好,因为脚本会产生很多不同的状态消息。我知道使用 write-host 可以进行彩色输出,但状态消息应该是可通过管道传输的。

任何想法如何解决这个问题?

最佳答案

我已经尝试过这个额外的功能,它基本上工作正常:

function Write-ColorOutput($ForegroundColor)
{
# save the current color
$fc = $host.UI.RawUI.ForegroundColor

# set the new color
$host.UI.RawUI.ForegroundColor = $ForegroundColor

# output
if ($args) {
Write-Output $args
}
else {
$input | Write-Output
}

# restore the original color
$host.UI.RawUI.ForegroundColor = $fc
}

# test
Write-ColorOutput red (ls)
Write-ColorOutput green (ls)
ls | Write-ColorOutput yellow

不过,这个特定测试的结果有点有趣:我们确实得到了红色、绿色和黄色的线条,但表头是红色的,即函数第一次调用的颜色。

关于powershell - 有没有办法在使用写输出时指定字体颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4647756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com