Wie kann ich den freien Speicherplatz auf einem Laufwerk dynamisch in meiner Eingabeaufforderung anzeigen? Mit dynamisch meine ich, dass jedes Mal, wenn die Eingabeaufforderung nach dem Ausführen eines Befehls neu generiert wird, der verbleibende freie Speicherplatz aktualisiert wird.
Bisher habe ich es versucht, aber aus irgendeinem Grund wird es nicht aktualisiert.
PS1="$PS1[free: $(df -h / | tail -1 | awk '{print $4}')] "
linux
command-line
bash
Ortix92
quelle
quelle
-P
für den Fall hinzuzufügen, dass die Ausgabe zweizeilig ist.tail
inawk
, um die Last davon zu reduzieren, da es eine Menge Male laufen wird.df -Ph / | awk '{ n = $4 } END { print n }'
mit dem Backslash vor dem,$4
wenn Sie das in doppelte Anführungszeichen setzen.Sie müssen die Umgebungsvariable PROMPT_COMMAND verwenden.
Diese Bash-Umgebungsvariable kann bei jedem Drücken der ENTER-Taste Befehle ausführen.
export PROMPT_COMMAND = "FREESP =" $ (df -h | tail -1 | awk '{print $ 4}') ""
export PS1 = "PS1 [kostenlos: $ FREESP]"
quelle