dir
颜色输出到文件
如果我在 Ubuntu 上运行以下命令:
dharmatech@dharmatech-01:/tmp$ pwsh -Command 'dir' > out.txt
然后 cat 输出:
dharmatech@dharmatech-01:/tmp$ cat out.txt
颜色被渲染:
颜色表示为out.txt
作为转义码:
写入主机颜色
这里我用的是Write-Host
以红色显示文本:
但是,如果我将输出重定向到文件,我们可以看到这次结果文件中没有表示颜色:
Question
有没有办法获取文件中的颜色Write-Host
情况与dir
命令?
从 Powershell 7.2 开始这应该是可能的,因为它有支持对于 ANSI 颜色。这要归功于先前的回答.
举个例子(Powershell 7.3.3./MacOS,YMMV):
$PsStyle.OutputRending = "Ansi"
$s = Get-ChildItem | Select -First 3 | Out-String
Set-Content -path foo.txt $s
Get-Content ./foo.txt # prints out colored output
检查文件,例如,vi
显示 Ansi 颜色代码:
...
^[[32;1mUnixMode User Group LastWriteTime Size Name^[[0m
^[[32;1m-------- - ----- ------------- ---- ----^[[0m
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)