So suchen Sie in meiner ZSH -Geschichte

So suchen Sie in meiner ZSH -Geschichte

Die meisten von uns verbringen unsere Zeit im Terminal, führen Befehle aus, konfigurieren Server, Entwicklungswerkzeuge und mehr. In einigen Fällen führen wir immer wieder ähnliche Befehle aus.

Obwohl Sie Skripte erstellen können, um solche Aufgaben zu automatisieren, können die Befehle manchmal geringfügig variieren. Wenn ein solches Szenario passiert, ist die Befehlsgeschichte der beste Weg, um zu gehen.

ZSH GESCHICHTE

ZSH ist eine beliebte Hülle, die oben auf Bash gebaut wurde. Es speichert Ihren Befehlsgeschichte in der .ZSH_HISTORY -Datei in Ihrem Heimverzeichnis.

Wenn Ihre ZSH -Shell standardmäßig nicht den Befehlsverlauf unterstützt, lesen Sie unseren ZSH -Befehlsverlaufsartikel, um zu erfahren, wie Sie dies aktivieren können.

Die Gesamtzahl der Befehle, die der ZSH -Befehl in der Verlaufsdatei speichern kann.

So verwenden Sie den ZSH -Befehlsverlauf

Nachdem wir wissen, dass die ZSH -Shell Ihre Befehle in einer Datei speichert, lassen Sie uns feststellen, wie wir sie verwenden können, um unsere Terminalnutzung zu erleichtern.

Verwenden Sie den Befehl History, um alle in Ihrer ZSH -Verlaufsdatei gespeicherten Befehle anzuzeigen.

Wenn Sie den Befehl historisch ohne Argumente ausführen, zeigt ZSH alle in der Verlaufsdatei gespeicherten Befehle an:

Geschichte

Unten ist ein Beispielausgang:

38 Echo $ histfile
39 ZSH

53 Geschichte
54 env
55 Katze .ZSHRC

In den meisten Fällen zeigt der Befehl historischer an eine umfangreiche Liste aller ausgeführten Befehle an. Sie können die Ausgabe an Befehle wie Grep leiten, um nach einem bestimmten Befehl oder weniger zu suchen, um sie leicht zu navigieren.

Geschichte | Grep Echo

Oder weniger:

Geschichte | weniger

Der Befehl des Verlaufs unterstützt auch numerische Notation. Um beispielsweise die letzten n -Befehle in der Verlaufsdatei anzuzeigen.

Um beispielsweise die letzten 5 Befehle anzuzeigen, können wir dies tun:

Geschichte -5

Verwenden Sie aus dem n -ten Befehl das +n.

Verwenden Sie den Befehl zum Beispiel, um den Geschichte vom 10. Befehl zum letzten zu zeigen:

Geschichte +10

So durchsuchen Sie den Befehlsverlauf von ZSH

Obwohl der Befehl des Verlaufs nützlich sein kann, um Ihren gesamten Befehlsverlauf anzuzeigen, ist er nicht sehr nützlich, wenn Sie einen vorherigen Befehl erneut ausführen möchten.

Konzentrieren wir uns nun darauf, wie wir den Befehlsverlauf durchsuchen und einen früheren Befehl erneut ausführen können.

Auf und Ab -Pfeil

Der häufigste Weg, um den Befehlsverlauf zu durchsuchen.

Der UP -Pfeil scrollen Sie durch Ihren Befehlsgeschichte vom neuesten bis zum frühesten. Sobald Sie den Befehl gefunden haben, den Sie erneut ausführen möchten, drücken Sie die Rückkehr, um ihn auszuführen.

Knall!) Format

Eine andere Möglichkeit, Ihren Befehlsverlauf zu durchsuchen, besteht darin, den Ausruf zu verwenden (Ausrufe (!) markieren. Wenn Sie doppelte Knall eingeben (!!), es wird den vorherigen Befehl ausführen:

!!

Der häufigste Anwendungsfall für dieses Format ist, wenn Sie vergessen, einen Befehl als sudo auszuführen. Zum Beispiel, wenn Sie den APT -Befehl ausführen als:

APT -Update

Sie können den Befehl als sudo mit der Syntax erneut ausführen:

sudo !!

Das obige wird den APT-Befehl als sudo erneut erfüllen.

Wenn du läufst !n-wo n ist die Anzahl der Befehl im Befehlsgeschichte. Sie können einen bestimmten Befehl in der Verlaufsdatei ausführen.

Um beispielsweise den 12. Befehl im Befehlsverlauf auszuführen, können Sie dies tun:

!12

Wenn Sie nicht die Nummer des Befehls abrufen können, den Sie ausführen möchten, können Sie die verwenden !Wortformat, um den Befehl auszuführen, beginnend mit dem angegebenen Wort.

Zum Beispiel, um den Befehl auszuführen, beginnend mit dem Prinkenv -Wort:

!drucken

Mit dem obigen Befehl wird der neueste Befehl ausgeführt, der dem angegebenen Wort entspricht.

Rekursive Suche

Ein weiterer häufiger Weg, um Ihren Befehlsverlauf zu durchsuchen, ist die rekursive Suche. Um es zu verwenden, drücken Sie Strg + R in Ihrer Terminalsitzung. Dadurch wird Ihre Terminalsitzung in den Suchmodus geändert. Sie können für frühere Befehle eingeben.

BCK-i-Suche: _

Wenn Sie eingeben, sucht die Shell nach einem Matching -Befehl im Verlauf und schlägt sie vor. Um nach dem nächsten Matching -Vorschlag zu suchen, drücken Sie Strg + r.

Sobald Sie einen Matching -Befehl gefunden haben, drücken Sie die Rückkehr, um ihn auszuführen.

Druckeingabeaufforderung
BCK-i-Suche: print_

Verhalten des ZSH -Verlaufs ändern

Obwohl wir nicht alle Verbesserungen durchgehen werden, die Sie durchführen können, um den ZSH -Befehlsverlauf zu verbessern, sind Folgendes nützlich zu wissen.

Verwenden Sie den Befehl, um Ihren Befehlsverlauf zu löschen:

Geschichte -c

Das obige gibt Ihnen eine Ausgabe, die angibt, dass die Verlaufsdatei gereinigt wurde.

Verlaufsdatei gelöscht.

Eine weitere Änderung, die wir vornehmen können, ist die $ histControl -Variable. Überprüfen Sie die ZSH -Dokumentation, um mehr darüber zu erfahren. Wir können jedoch ZSH erkennen, dass sie nicht mehr doppelte Befehle speichern, indem die Variable als Folgendes hinzugefügt wird:

Exportieren Sie HistControl = Ignoredups

Abschluss

In diesem Tutorial wurde erörtert. Wir haben behandelt, wie man den Befehlsverlauf durchsucht.

Vielen Dank für das Lesen!