Я начинаю использовать PowerShell для проекта Windows, используя node.js. При запуске многих программ (включая node, supervisor и npm) из командной строки Powershell мои цвета фона и цвета переднего плана PowerShell начинают меняться от цветов Powershell по умолчанию. Как я могу поддерживать последовательный просмотр в PowerShell, чтобы я мог легко прочитать результаты выполнения команд?
Как вы можете reset цвета для Windows PowerShell, если они становятся поврежденными после запуска программы?
Ответ 1
У меня есть эта проблема с MSBuild, особенно когда я ctrl + C a build. Это то, что я вложил в файл 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
}
Затем я просто вызываю Reset -Colors, когда MSBuild испортил их.
Ответ 2
В качестве одноразовой операции просто запустите это:
> [Console]::ResetColor()
Из документов: (выделено мной)
Цвета переднего плана и фона восстанавливаются до цветов, которые существовали при запуске текущего процесса.
Ответ 3
Сначала создайте профиль в 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 или другие команды без каких-либо проблем с цветом.