PowerShell: Wie kann ich die Eingabeaufforderung anpassen?


7

Ich möchte die env-Variable PROMPT als $ p $ _ $ g definieren, damit die Eingabeaufforderung in einer neuen Zeile beginnt.

Scheint aber nicht auf meine PowerShell-Eingabeaufforderung zuzutreffen :-(

dir-Funktion: / zeigt an, dass bereits ein Name "prompt" definiert ist.

Wie kann ich meine Eingabeaufforderung in einer PowerShell-Konsole anpassen, ohne den bereits definierten Namen der Eingabeaufforderung zu verfälschen?

Antworten:


16

Die promptFunktion ist nur die Standardaufforderung von Powershell. Wenn Sie eine neue promptFunktion in Ihr Profil einfügen, wird die vorhandene überschrieben. Wenn Sie jedoch die benutzerdefinierte Definition in Ihrem Profil entfernen, wird die vorherige Funktion erneut verwendet.

Bearbeiten Sie Ihr Profil mit:

notepad $profile

Fügen Sie dann Ihre benutzerdefinierte promptFunktion hinzu:

function prompt {
    "$pwd
    >"
}

Starten Sie Powershell neu und Sie erhalten Ihre neue Eingabeaufforderung.

Zum Zurücksetzen einfach $profileerneut bearbeiten und die neue Funktion entfernen.


Ein Hinweis zum Hinzufügen: Sie können so ziemlich alles in Ihrer Eingabeaufforderungsfunktion tun, einschließlich kolorierter Ausgabe (mit Write-Host) usw. Beachten Sie jedoch, dass etwas zurückgegeben werden muss . Wenn Sie dies nur dort tun, erhalten Write-Host -Fore Green -no "PS $pwd> "Sie eine Eingabeaufforderung, PS Home:\> PS> da PowerShell davon ausgeht, dass eine leere Eingabeaufforderung nicht Ihren Vorstellungen entspricht. In diesen Fällen können Sie ein Zeichen mehr als nötig ausgeben und "b "` (das Rücktastezeichen) zurückgeben.
Joey

Johannes: Ich kann nicht glauben, dass ich es vergessen habe $pwd, danke!
MattB
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.