如何更改 PowerShell 提示颜色?
How can I change the PowerShell prompt color?
我经常发现自己迷失在大量看起来都一样的线条中。我很难从以前命令的输出中分辨出我最近命令输出的开头。
所以,我想将 PowerShell 提示符的颜色从黑底白字永久更改为其他颜色。我该怎么做?
在我看来,提示由两部分组成:
- 路径
- 命令
如何更改两者的颜色,但不更改命令的输出颜色?
或者,我也非常希望看到路径部分带有下划线。这也有助于在其他输出行中找到我之前的命令,以便查看相应的其他输出从哪里开始。这可能吗?
编辑
一些评论要求对我的问题进行一些详细说明,所以这里有两个描述 actual/expected 情况的屏幕截图(注意红线):
实际
预计
我想为 PowerShell 5.x 和 Core.
获取这个
那么,您认为这是一个功能请求而不是对现有功能的查询吗?
我发现如果您使用 Powershell 5.1,您可以使用 ASCII table 中的一些转义字符以获得带下划线的输出:
Write-Host "Hello $([char]27)[4mWorld$([char]27)[24m"
由于我不确定这是否完美,所以给特定文本加下划线的最佳解决方案可能是这样的:
function Write-Underlined-Host([string]$text,[boolean]$ispath)
{
if ($ispath -eq $false)
{
Write-Host $text
}
else
{
$underline = '-'
$underline_count = $underline * $text.Length
Write-Host -Object $text
Write-Host -Object $underline_count
}
}
$my_path = 'c:\users\jime\desktop'
Write-Underlined-Host -text $my_path -ispath $true
如果您想更改 powershell 脚本编辑器的颜色(例如,如果您使用 ISE),您可以更改所有类型的颜色。
在 ISE 中:
工具>选项>脚本窗格令牌:(见我附上的图片)
将我的问题发布到 GitHub 上的 PowerShell 团队后,这里是我的问题的答案:
https://github.com/PowerShell/PowerShell/issues/11136
有一个 prompt()
挂钩函数可用于自定义提示。
我经常发现自己迷失在大量看起来都一样的线条中。我很难从以前命令的输出中分辨出我最近命令输出的开头。
所以,我想将 PowerShell 提示符的颜色从黑底白字永久更改为其他颜色。我该怎么做?
在我看来,提示由两部分组成:
- 路径
- 命令
如何更改两者的颜色,但不更改命令的输出颜色?
或者,我也非常希望看到路径部分带有下划线。这也有助于在其他输出行中找到我之前的命令,以便查看相应的其他输出从哪里开始。这可能吗?
编辑
一些评论要求对我的问题进行一些详细说明,所以这里有两个描述 actual/expected 情况的屏幕截图(注意红线):
实际
预计
我想为 PowerShell 5.x 和 Core.
那么,您认为这是一个功能请求而不是对现有功能的查询吗?
我发现如果您使用 Powershell 5.1,您可以使用 ASCII table 中的一些转义字符以获得带下划线的输出:
Write-Host "Hello $([char]27)[4mWorld$([char]27)[24m"
由于我不确定这是否完美,所以给特定文本加下划线的最佳解决方案可能是这样的:
function Write-Underlined-Host([string]$text,[boolean]$ispath)
{
if ($ispath -eq $false)
{
Write-Host $text
}
else
{
$underline = '-'
$underline_count = $underline * $text.Length
Write-Host -Object $text
Write-Host -Object $underline_count
}
}
$my_path = 'c:\users\jime\desktop'
Write-Underlined-Host -text $my_path -ispath $true
如果您想更改 powershell 脚本编辑器的颜色(例如,如果您使用 ISE),您可以更改所有类型的颜色。
在 ISE 中: 工具>选项>脚本窗格令牌:(见我附上的图片)
将我的问题发布到 GitHub 上的 PowerShell 团队后,这里是我的问题的答案:
https://github.com/PowerShell/PowerShell/issues/11136
有一个 prompt()
挂钩函数可用于自定义提示。