Ich verstehe nicht ganz, wie das funktioniert. Wenn ich PowerShell als Administrator öffne, kann ich mit der rechten Maustaste auf die Titelleiste klicken, zu „Eigenschaften“ und dann zu „Farben“ gehen und Änderungen vornehmen. Beispielsweise habe ich die Standardfarbe „Bildschirmhintergrund“ auf Schwarz anstelle des standardmäßigen Dunkelblaus eingestellt. Mir ist aufgefallen, dass diese Änderungen auch dann bestehen bleiben, wenn ich den Computer neu starte und PowerShell erneut als Administrator öffne. Diese Änderungen scheinen jedoch nicht zu gelten, wenn ich PowerShell regelmäßig öffne (nicht als Administrator). So könnte ich beispielsweise festlegen, dass die Administrator-PowerShell einen schwarzen Hintergrund hat und die normale PowerShell einen roten Hintergrund.
Aber hier ist der Punkt: Angenommen, ich ändere viele Farben und möchte diese Änderungen irgendwie sichern. Sie müssen irgendwo gespeichert werden, und das ist natürlich für jede der beiden Versionen von PowerShell unterschiedlich. Wo werden diese Eigenschaften also für beide Versionen gespeichert? Gibt es eine einfache Möglichkeit, sie zu sichern und sie zu einem späteren Zeitpunkt wiederherzustellen, wenn zukünftige Änderungen vorgenommen wurden? Wenn nicht, ist es dann möglich, diese Einstellungen irgendwie in meinem PowerShell-Profil beizubehalten?
Antwort1
Die Farbeinstellungen werden in der Powershell-Verknüpfung gespeichert.
Jeder Benutzer hat seine eigene Verknüpfung inC:\Users\[User]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Windows PowerShell
Sie können mehrere Verknüpfungen zu PowerShell mit unterschiedlichen Schriftart-/Farbeinstellungen erstellen, indem Sie das Eigenschaftenfenster für diese Verknüpfung aufrufen.
Sie können die Verknüpfung überall speichern und sie mit gespeicherten Farb- und Schrifteinstellungen sogar auf anderen Computern verwenden.
Antwort2
Backup-Einstellungen
Gemäß derHost abrufenDokumentation, um diese Einstellungen in eine Sicherungsdatei zu exportieren usw. Sie könnten etwas wie verwenden (Get-Host).UI.RawUI | Format-List -Property *
und das in eine-OutFile
.
PS C:\> (Get-Host).UI.RawUI | Format-List -Property * ForegroundColor : DarkYellow BackgroundColor : DarkBlue CursorPosition : 0,390 WindowPosition : 0,341 CursorSize : 25 BufferSize : 120,3000 WindowSize : 120,50 MaxWindowSize : 120,81 MaxPhysicalWindowSize : 182,81 KeyAvailable : False WindowTitle : Windows PowerShell 2.0 (04/11/2008 00:08:14)
Einstellungen zurücksetzen
Sie können dann einePower ShellSkript, um diese wichtigen Einstellungen explizit festzulegen und dieses Skript dann beim Öffnen eines neuenPower ShellSitzung.
(Get-Host).UI.RawUI.ForegroundColor = "DarkYellow"
(Get-Host).UI.RawUI.BackgroundColor = "DarkBlue"
(Get-Host).UI.RawUI.CursorPosition = @{ X = 0; Y = 390 }
(Get-Host).UI.RawUI.WindowPosition = @{ X = 0; Y = 341 }
(Get-Host).UI.RawUI.CursorSize = 25
(Get-Host).UI.RawUI.BufferSize = new-object System.Management.Automation.Host.Size(120,3000)
(Get-Host).UI.RawUI.WindowSize = new-object System.Management.Automation.Host.Size(120,50)
(Get-Host).UI.RawUI.WindowTitle = "Windows PowerShell 2.0"