Aktuelle Definition der Shell-Funktion anzeigen

11

Ich bearbeite bashrc also ständig und habe ein offenes Terminal mit einer funktionierenden Funktionsdefinition, obwohl bashrc mit einer falschen Funktionsdefinition aktualisiert wurde. (Da sich die Definition erst ändert, wenn ich den aktualisierten bashrc beziehe.) Wie kann ich in diesem Fall die Definition der Arbeitsfunktion nachschlagen? Zum Beispiel, wenn ich tippe:

alias function_name

Ich kann sehen, wie die Definition für diesen Alias ​​lautet. Gibt es einen ähnlichen Befehl für die Funktion? Wenn nicht, gibt es einen Befehl zum Ausgeben des gesamten Bashrc, den das aktuelle Terminal verwendet?

Vordenker
quelle

Antworten:

18
typeset -f function

Zeigt die aktuelle Definition der angegebenen Funktion an. Es funktioniert in ksh (woher es stammt), bash und zsh. (nb in zsh, type -f, which, functionsund whence -fzeigen auch die Funktionsdefinition.)

Kevin
quelle
Sie können auch whence -cvin zsh verwenden. Die -vOption ist , Ihnen zu sagen, wenn es keine solche Alias oder eine Funktion (oder in anderer Weise ausführbar in Ihnen PATH) überhaupt. Wenn Sie es häufig verwenden (wie ich), können Sie es mit einem Ein-Wort-Befehl aliasen.
Emanuel Berg