gpt4 book ai didi

PowerShell 在使用 tee-object 时删除控制台消息颜色

转载 作者:行者123 更新时间:2023-12-04 01:10:56 25 4
gpt4 key购买 nike

在使用 tee-object 时,有没有办法阻止 PowerShell 删除控制台消息颜色?

当我在没有 tee-object 的情况下运行时,我会收到很好的错误和详细的 powershell 消息颜色,如下所示:

powershell.exe -noprofile -file $project_root/test_main.ps1

with color

但是,当我使用 tee-object(b/c 我想登录到控制台和文件)时,控制台上没有显示消息颜色(我知道文件不会显示它),如下所示:
powershell.exe -noprofile -file $project_root/test_main.ps1 | tee-object -FilePath $log

no color

如果 powershell 只是使用 tee-object 将输出拆分为除控制台之外的文件,为什么我会丢失控制台格式?

最佳答案

试试这个:

powershell.exe -noprofile -command { $path\test_main.ps1 | tee-object $log }

发生这种情况是因为这部分首先被执行:
powershell.exe -noprofile -file $project_root/test_main.ps1 

这样 tee-object 看到的是 native EXE 的输出。而且 AFAICT,PowerShell 不会从 native EXE 输出错误记录(或突出显示)stderr 输出(除非您重定向错误流,例如 2>err.log

关于PowerShell 在使用 tee-object 时删除控制台消息颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3304445/

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