In meiner derzeitigen Situation ist es nicht ungewöhnlich, dass ich mehrere UNIX-Computer habe, mit denen ich mich verbinde, je nach Situation mehrere verschiedene Benutzer und verschiedene Verzeichnisse auf den Maschinen durchsuche. Ich benutze ksh durch die ganze Sache.Einfärben von Verzeichnisnamen in ksh
Ich habe vor kurzem mit meiner Eingabe gegriffen, und ich konnte es bekommen, um einige Farben abhängig von meinem aktuellen Benutzernamen und aktuellen Server zu ändern. Was ich aber auch möchte, ist, dass es die Farben basierend auf meinem aktuellen Verzeichnis ändert. Zum Beispiel, wenn ich im Verzeichnis "foo" wäre, sollte die Eingabeaufforderung gelb sein, aber wenn ich im Verzeichnis "bar" wäre, wäre die Eingabeaufforderung Magenta. In beiden Fällen sollten Unterverzeichnisse ebenfalls zählen, sodass eine einfache Unterzeichenfolgenprüfung ausreichen sollte.
Das Problem, das ich jedoch bekam, ist, dass wenn ich mein .Profile-Skript ausführe, es das Verzeichnis richtig färbt - aber es nicht mehr dynamisch aktualisiert, wenn ich in ein anderes Verzeichnis wechseln - und ich bin nicht sicher, wie Bevor ich alle Verzweigungen machte, konnte ich mein aktuelles Arbeitsverzeichnis korrekt drucken, nachdem ich die Verzeichnisse gewechselt hatte.
Ich habe etwas googeln und Informationen für bash finden, aber ksh scheint weitgehend ignoriert zu werden. Da ich nicht herausfinden kann, wie ich das alleine machen kann, muss ich es in die Stack Overflow Community bringen, um es dem zukünftigen Wissen hinzuzufügen. Also, mit meiner langatmigen Erklärung ist die "schnelle Version" meiner Frage wie folgt:
In ksh, wie kann ich meine Eingabeaufforderung einrichten, um das aktuelle Arbeitsverzeichnis anzuzeigen und den Text basierend auf der aktuellen Farbe Arbeitsverzeichnis ist? Ist es überhaupt möglich?