bash-preexec ist ein Patch, der die GNU Bourne Again Shell in zweierlei Hinsichten erweitert: Vor der Ausführung eines Befehls im interaktiven Modus wird der Inhalt der Variable PREEXEC_COMMAND ausgeführt. Dies ist ähnlich der preexec-Funktionen von Shells wie der zsh. Der zu startende Befehl wird dabei in dem Array CMD gespeichert, wobei das erste Element den Namen des Befehls enthält und alle weiteren Elemente den Argumenten des Befehls entsprechen.