我开始将 PowerShell 用于使用 node.js 的 Windows 项目。从 Powershell 命令行运行许多程序(包括节点、主管和 npm)时,我的 PowerShell 背景和前景色开始从默认的 Powershell 颜色发生变化。如何在 PowerShell 中保持一致的外观,以便轻松读取运行命令的结果?
问问题
12130 次
4 回答
70
于 2016-02-17T23:52:42.557 回答
17
我在使用 MSBuild 时遇到了这个问题,尤其是当我 ctrl+C 构建时。这是我放入 profile.ps1 文件中的内容:
$OrigBgColor = $host.ui.rawui.BackgroundColor
$OrigFgColor = $host.ui.rawui.ForegroundColor
# MSBUILD has a nasty habit of leaving the foreground color red
# if you Ctrl+C while it is outputting errors.
function Reset-Colors {
$host.ui.rawui.BackgroundColor = $OrigBgColor
$host.ui.rawui.ForegroundColor = $OrigFgColor
}
然后,当 MSBuild 搞砸它们时,我只调用 Reset-Colors。
于 2012-12-10T17:14:37.310 回答
13
如果您还没有配置文件,请首先在 PowerShell 中创建配置文件:
test-path $profile
new-item -path $profile -itemtype file -force
notepad $profile
其次,将此代码放入文件中:
function prompt {
[Console]::ResetColor()
}
第三,检查 PowerShell 是否允许您运行脚本。
Get-ExecutionPolicy
如果显示为 Restricted,则运行以下 AS 管理员(请确保您了解安全隐患):
Set-ExecutionPolicy RemoteSigned
打开一个新的 PowerShell 提示符,您应该能够运行 node 或其他命令而不会出现任何颜色问题。
于 2012-12-10T17:10:59.977 回答
0
我通过运行以下命令来修复颜色问题:
cmd
color 07
exit
这些命令的作用是在 PowerShell 中运行 cmd,运行color 07
以修复颜色,然后从 cmd 退出以恢复到 PowerShell。
于 2018-10-23T10:41:22.753 回答