Auch nicht-0-exit-codes in das nachfolgende bash-Eingabeaufforderung

Gelegentlich werde ich einen Befehl ausführen, hat eine Menge Ausgaben. Gelegentlich, die letzten 30-40 Zeilen der Ausgabe (eine.k.ein. der einzige Teil der Ausgabe, die ich jemals wirklich zu sehen) ist in Ordnung, aber viel weiter vorne, es war ein Fehler. Ich würde gerne, um es einfacher, um zu bemerken, dass der Befehl fehlgeschlagen ist. So zu tun, ich will den return-code ein Teil meiner Aufforderung. Also nahm ich meine $PS1:

[\D{%Y-%m-%d} \t] \[\e]0;\u@\h: \w\a\]\$

...und erweitert diese:

[\D{%Y-%m-%d} \t] ${?/^0$/} \[\e]0;\u@\h: \w\a\]\$

Diese Ergebnisse in einen prompt wie diesen:

[2011-05-10 09:38:07] 0 soren@lenny:~$ 

Allerdings würde ich gerne einen Weg finden, um es nur den exit-code, wenn es nicht 0 ist. Wie kann ich das tun? Sicher, ich könnte

$(echo \$? | sed -e blah)

aber so leicht wie sed ist, ist es immer noch ein bisschen mehr schwere Gewicht als die bash die eingebauten Sachen.

InformationsquelleAutor Soren | 2011-05-10
Schreibe einen Kommentar