Ich fange an, PowerShell für ein Windows-Projekt mit node.js zu verwenden. Wenn ich viele Programme (einschließlich Knoten, Supervisor und Npm) über die Powershell-Befehlszeile ausführe, ändern sich die Hintergrund- und Vordergrundfarben für PowerShell von den standardmäßigen Powershell-Farben. Wie kann ich ein konsistentes Erscheinungsbild in PowerShell beibehalten, damit ich die Ergebnisse der Ausführung von Befehlen einfach lesen kann?Wie können Sie die Farben für Windows PowerShell zurücksetzen, wenn sie nach dem Ausführen eines Programms beschädigt werden?
Antwort
Ich habe dieses Problem mit MSBuild, vor allem, wenn ich Ctrl + C ein Build. Dies ist, was ich in meiner profile.ps1 Datei setzen:
$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
}
Dann einfach rufe ich neu-Farben, wenn MSBuild sie vermasselt hat.
zunächst ein Profil in Powershell erstellen, wenn Sie noch keines haben:
test-path $profile
new-item -path $profile -itemtype file -force
notepad $profile
Zweitens setzen diesen Code in der Datei:
function prompt {
[Console]::ResetColor()
}
Drittens prüfen, ob Powershell wird es Ihnen ermöglichen, Skripte ausführen
Get-ExecutionPolicy
Wenn dies sagt Restricted dann den folgenden als Administrator ausführen (bitte sicher, dass Sie die Auswirkungen auf die Sicherheit verstehen):
Set-ExecutionPolicy RemoteSigned
Öffnen Sie eine neue Powershell-Eingabeaufforderung und Sie sollten in der Lage Laufknoten oder andere sein Befehle ohne Farbprobleme.
Kommentieren, wenn Sie posh-git verwenden, gibt es eine Chance, dass Sie das Standardprofil verwenden, das eine "prompt" -Funktion definiert, also stellen Sie sicher, dass Sie '[Console] :: ResetColor()' zu dieser Funktion hinzufügen Überschreibe es und verliere die ganze noble Freundlichkeit. – Pureferret
Als einmaliger Vorgang gerade dies auszuführen:
> [Console]::ResetColor()
From the docs: (Hervorhebung hinzugefügt)
Die Vorder- und Hintergrundfarben auf die Farben wiederhergestellt sind, dass der aktuelle Prozess existierte, als begann.
Dies sollte die akzeptierte Antwort sein. Keine Profileinrichtung notwendig. – Matt
Es wäre eine gute akzeptierte Antwort, außer dass es für mich nicht funktioniert, und tatsächlich, nachdem Sie das Problem durch Kopieren der '$ host.ui.rawui'-Werte aus einem anderen Fenster manuell behoben haben, kehrt das Problem zurück. – mdonoughe
- 1. Wie kann ich die Powershell-Farben zurücksetzen
- 2. Ausführen eines Webstart-Java .jnlp-Programms nach dem Sichern
- 3. Wie können Sie ein Zeitlimit für das Ausführen eines PowerShell-Skripts festlegen?
- 4. WPF, können Sie die Standard-Windows-Farben erhalten?
- 5. Datei ist beschädigt, wenn sie an MailMessage C angehängt werden #
- 6. Finden Sie Funktionen eines Nicht-Microsoft-Programms
- 7. Wie können die Farben eines Bildes mit CSS3 geändert werden?
- 8. Ausführen eines Clojure-Programms
- 9. Können Sie Mysqli zusammen vorbereiten, ausführen und zurücksetzen?
- 10. Können Sie eine Ausnahme nach dem Typ eines Konvertierungsoperators abfangen?
- 11. Verwenden Sie Ant zum Ausführen eines Programms mit Befehlszeilenargumenten.
- 12. Ausführen eines .NET-Programms als Hintergrunddienst
- 13. können Sie Masm in Linux kompilieren/ausführen?
- 14. Wie können Sie in Windows PowerShell die maximale CPU% für das Skript festlegen?
- 15. INFORMIX Fehler beim Ausführen eines Java-Programms
- 16. Ausführen eines C-Programms in Python?
- 17. In Windows-Shell-Skripts (cmd.exe) wie weisen Sie das stdout eines Programms einer Umgebungsvariablen zu?
- 18. Verlassen Sie die Batch-Datei nach dem Ausführen mit Java
- 19. Ausführen eines Programms in Java-Code
- 20. So können Sie neu hinzugefügte Formulareingaben zurücksetzen
- 21. Wie können die Datentypen nach dem Ausführen einer gespeicherten Prozedur angegeben werden?
- 22. Wie können Sie Powershell-Befehle mit einer Liste von Zeichenfolgen ausführen, die Sie in C# festgelegt haben?
- 23. Ausführen eines Python-Programms von Crontab
- 24. Wie bekomme ich die Eingabeaufforderung dissapear nach dem Starten eines Programms über ein Batch-Skript?
- 25. Wie testen Sie die Leistung eines Prolog-Programms?
- 26. Wie können Farben mit Python ausgegeben werden?
- 27. Können Sie den Zähler eines for-each Loop zurücksetzen?
- 28. Ausführen eines kivy-Programms auf Android
- 29. Liste aller verfügbaren Farben für Powershell?
- 30. Verstrichene Zeit zum Ausführen eines C-Programms
Wow, 3 gute Antworten. – jimhark