funcfiletrace
Dieses Array enthält die absoluten Zeilennummern und die entsprechenden Dateinamen für den Punkt, an dem die aktuelle Funktion, die Quelldatei oder der Befehl (falls
EVAL_LINENOfestgelegt) evalaufgerufen wurde. Das Array hat die gleiche Länge wie funcsourcetraceund functrace, unterscheidet sich jedoch darin,
funcsourcetracedass die Zeile und die Datei der Aufrufpunkt und nicht der Definitionspunkt sind, und unterscheidet sich functracedarin, dass alle Werte in Dateien absolute Zeilennummern sind und nicht relativ zum Start einer Funktion, falls vorhanden.
funcsourcetrace
Dieses Array enthält die Dateinamen und Zeilennummern der Punkte, an denen die
aktuell ausgeführten Funktionen, Quelldateien und (falls EVAL_LINENOfestgelegt) evalBefehle definiert wurden. Die Zeilennummer ist die Zeile, in der das ' function name' oder ' name ()' begonnen hat. Bei einer automatisch geladenen Funktion wird die Zeilennummer als Null gemeldet. Das Format jedes Elements ist filename:lineno.
Für Funktionen, die automatisch aus einer Datei im nativen zsh-Format geladen werden, wobei nur der Hauptteil der Funktion in der Datei vorkommt, oder für Dateien, die von den sourceoder ' .' eingebauten Dateien ausgeführt wurden , werden die Ablaufverfolgungsinformationen wie folgt angezeigt filename:0, da die gesamte Datei die ist Definition. Der Name der Quelldatei wird beim Laden der Funktion in einen absoluten Pfad aufgelöst oder der Pfad dazu wird anderweitig aufgelöst.
Die meisten Benutzer werden stattdessen an den Informationen im funcfiletraceArray interessiert sein
.
funcstack
Dieses Array enthält die Namen der Funktionen, Quelldateien und (falls
EVAL_LINENOfestgelegt) evalBefehle. wird gerade ausgeführt. Das erste Element ist der Name der Funktion, die den Parameter verwendet.
Das Standard-Shell-Array zsh_eval_contextkann verwendet werden, um den Typ des Shell-Konstrukts zu bestimmen, das in jeder Tiefe ausgeführt wird: Beachten Sie jedoch, dass das neueste Element zuletzt in umgekehrter Reihenfolge vorliegt und detaillierter ist, z. B. mit einem Eintrag für toplevel, wobei der Haupt-Shell-Code entweder interaktiv oder aus einem Skript ausgeführt wird, das in nicht vorhanden ist $funcstack.
functrace
Dieses Array enthält die Namen und Zeilennummern der Aufrufer, die den aktuell ausgeführten Funktionen entsprechen. Das Format jedes Elements ist name:lineno. Anrufer werden auch für Quelldateien angezeigt. Der Aufrufer ist der Punkt, an dem der Befehl sourceoder ' .' ausgeführt wurde.