Sie können dies erreichen, indem Sie die Variable ändern PROMPT_COMMAND
, die vor PS1 ausgeführt wird, z.
PROMPT_COMMAND='ls'
Dies wird jedes Mal aufgelistet, wenn Sie eine neue Eingabeaufforderung erhalten. Natürlich möchten Sie nur ausführen, ls
wenn sich das Verzeichnis geändert hat:
PROMPT_COMMAND='[[ $my_currdir != $PWD ]] && ls; my_currdir=$PWD'
Dies prüft, ob das neue Verzeichnis nicht mit dem zuletzt festgelegten identisch ist, und wird dann ausgeführt. Danach ls
wird Ihr aktuelles Verzeichnis gespeichertmy_currdir
Ich habe hier eine noch bessere Zeile gefunden , in der sie bash als Dateimanager verwenden :
PROMPT_COMMAND='[[ ${__new_wd:=$PWD} != $PWD ]] && list; __new_wd=$PWD'
Da dies möglicherweise nicht festgelegt __new_wd
ist, können Sie einen Standardwert zuweisen, der in diesem Fall verwendet wird (siehe bash
Manpages, Suche nach :=
).