Wie füge ich dem Zsh-Verlauf einen Befehl hinzu?

Wie füge ich dem Zsh-Verlauf einen Befehl hinzu?

Ich möchte ein ZSH-Skript verwenden, um einen Befehl an den Befehlsverlauf anzuhängen, sodass er angezeigt wird, wenn ich den Aufwärtspfeil drücke. Ich habe eine Zeile an ${HISTFILE} angehängt, und sie wird dort als letzte Zeile angezeigt, aber die Aufwärtspfeil-Aktion scheint sie zu ignorieren.

Ich sehe, dass zsh parallel zur Verlaufsdatei einen Sitzungsverlauf verwaltet, aber ich habe noch keine Möglichkeit gesehen, diesen zu erweitern oder auf andere Weise das zu erreichen, was ich vorhabe. Gibt es eine Möglichkeit, dies zu tun?

Antwort1

Sie können hierfür print -soder verwenden:print -S

-s
Platzieren Sie die Ergebnisse in der Verlaufsliste statt in der Standardausgabe. Jedes Argument des Druckbefehls wird im Verlauf als einzelnes Wort behandelt, unabhängig von seinem Inhalt.
-S
Platzieren Sie die Ergebnisse in der Verlaufsliste statt in der Standardausgabe. In diesem Fall ist nur ein einziges Argument zulässig; es wird in Wörter aufgeteilt, als wäre es eine vollständige Shell-Befehlszeile. Der Effekt ist ähnlich dem Lesen der Zeile aus einer Verlaufsdatei mit aktivierter HIST_LEX_WORDSOption.

Sehenhttps://zsh.sourceforge.io/Doc/Release/Shell-Builtin-Commands.html#index-print

verwandte Informationen