GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux History Command Tutorial für Anfänger (8 Beispiele)

Wenn Ihre Arbeit darin besteht, Tools und Skripte auf der Linux-Befehlszeile auszuführen, gibt es sicher viele Befehle, die Sie jeden Tag ausführen würden. Diejenigen, die neu in der Befehlszeile sind, sollten wissen, dass es ein Tool namens History gibt - das gibt Ihnen eine Liste von Befehlen, die Sie zuvor ausgeführt haben.

In diesem Tutorial werden wir die Grundlagen des History-Befehls anhand einiger leicht verständlicher Beispiele besprechen. Aber bevor wir das tun, ist es erwähnenswert, dass alle Beispiele hier auf einem Ubuntu 16.04LTS-Rechner getestet wurden.

Linux-Verlaufsbefehl

Wenn Sie wissen, wie Sie Ihren Befehlszeilenverlauf effektiv nutzen, können Sie täglich viel Zeit sparen. Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine gute Vorstellung davon vermitteln sollen, wie Sie den Verlaufsbefehl zu Ihrem Vorteil nutzen können.

Q1. Wie funktioniert der Verlaufsbefehl?

Die grundlegende Verwendung ist einfach - führen Sie einfach den Befehl "Verlauf" aus.

So können Sie sehen, dass Ihre zuvor ausgeführten Befehle in der Ausgabe angezeigt werden. Beachten Sie, dass ich den 'more'-Befehl verwendet habe, um sicherzustellen, dass die Ausgabeanzeige auf der ersten Seite angehalten wird (die vollständige Ausgabe von 'history' ist normalerweise sehr lang).

Q2. Wie kann ich dafür sorgen, dass im Verlauf auch Datum und Uhrzeit angezeigt werden?

Wenn Sie möchten, dass der Verlaufsbefehl das Datum und die Uhrzeit der Ausführung für jeden Befehl anzeigt, können Sie dies tun, indem Sie die HISTTIMEFORMAT-Variable auf folgende Weise exportieren:

export HISTTIMEFORMAT="%F %T:"

Das ist es. Wenn Sie jetzt den Befehl „Verlauf“ ausführen, sehen Sie die Datums- und Uhrzeitinformationen in der Ausgabe.

Falls Sie sehen, dass Datum und Uhrzeit für alle Befehle gleich sind, sollte die folgende Erklärung die Dinge klarstellen:

Wenn Sie HISTTIMEFORMAT in bash setzen, werden Ihre neuen Einträge in der Verlaufsdatei mit einem 
Zeitstempel gespeichert, ältere Befehle, die keinen Zeitstempel haben (die, bevor Sie jemals HISTTIMEFORMAT
gesetzt haben, werden einen anzeigen und den gleichen Datums-Zeit-Stempel (ich nehme an, der aus dem ersten gefundenen Eintrag mit einem
echten Zeitstempel).

Dieses Problem sollte sich von selbst lösen, nachdem Ihr vollständiger Verlauf in a aktualisiert wurde ein paar Tage.

Sie können in ~/.bash_history nachsehen, welche die erste Zeile ist, die einen Datums-Zeit-Stempel hat.
Das sind Zeilen, die mit einem # beginnen, gefolgt von einem ( derzeit) 10-stellige Nummer.

Q3. Wie kann ich Befehle zum Beenden der Aufzeichnung des Verlaufs veranlassen?

Wenn eine Situation auftritt, in der Sie nicht möchten, dass das System Ihren Befehlsverlauf speichert, können Sie dies mit der HISTSIZE-Variable tun. Exportiere es einfach mit Null als Wert und gut ist.

Siehe folgendes Beispiel:

Sie können also sehen, dass das Ausführen des Befehls „Verlauf“ jetzt zu keinen Ergebnissen geführt hat.

Beachten Sie, dass es auch eine HISTFILESIZE-Variable gibt. Hier ist der Unterschied zwischen den beiden:

HISTSIZE ist die Anzahl der Zeilen oder Befehle, die im Speicher in einer Verlaufsliste gespeichert werden, während Ihre 
Bash-Sitzung läuft.

HISTFILESIZE ist die Anzahl der Zeilen oder Befehle, die (a ) sind beim
Start einer Sitzung in der Verlaufsdatei zulässig und (b) werden am Ende Ihrer Bash-Sitzung in der Verlaufsdatei zur Verwendung in
zukünftigen Sitzungen gespeichert.

Q4. Wie kann ich dafür sorgen, dass der Verlauf keinen einzigen Befehl aufzeichnet?

Dies kann erreicht werden, indem die Variable HISTCONTROL auf „ignorespace“ gesetzt wird. Dies können Sie folgendermaßen tun:

export HISTCONTROL=ignorespace

Wenn Sie jetzt einen Befehl ausführen, der nicht im Verlauf aufgezeichnet werden soll, führen Sie ihn einfach mit einem führenden Leerzeichen aus.

Natürlich können Sie den grep-Befehl verwenden, um nach bestimmten Schlüsselwörtern oder Befehlen in der vom Verlaufsbefehl erzeugten Ausgabe zu suchen. Es gibt jedoch auch eine viel schnellere Methode:Reverse-i-Search.

Es ist ganz einfach - alles, was Sie tun müssen, ist, in der Befehlszeile STRG+R zu drücken, und Sie sehen, wie sich Ihre Eingabeaufforderung in etwa so ändert:

Geben Sie nun das Schlüsselwort ein, nach dem Sie suchen möchten, und Sie sehen auf der rechten Seite passende Vorschläge aus dem Verlauf. Zum Beispiel habe ich 'Mann' (ohne Anführungszeichen) eingegeben und das erste Ergebnis, das ich bekommen habe, war 'Mann apropos'.

Wenn dies nicht das ist, wonach Sie suchen, können Sie das nächste übereinstimmende Ergebnis erhalten, indem Sie erneut STRG+R drücken. In meinem Fall war das nächste Ergebnis also „Mensch findet Suche“.

Auf diese Weise können Sie weitersuchen. Sobald Sie das gewünschte Ergebnis erhalten haben, drücken Sie einfach die rechte Pfeiltaste und Sie erhalten den gesamten Befehl an Ihrer Eingabeaufforderung.

Jetzt können Sie also diesen Befehl ausführen oder ihn beliebig verwenden.

F6. Wie wird der vorherige Befehl ausgeführt?

Es gibt zwei einfache Möglichkeiten, den zuletzt ausgeführten Befehl auszuführen:Drücken Sie STRG+P, oder führen Sie den folgenden Befehl aus:

!!

Glauben Sie nicht (insbesondere den zweiten Weg)? Probieren Sie es aus.

Falls es erforderlich ist, den vorletzten Befehl schnell auszuführen, können Sie dies folgendermaßen tun:

!-1

So weiter und so fort.

Q7. Wie kann ich bewirken, dass der Verlauf doppelte Einträge in der Ausgabe ignoriert?

Dies kann durch Setzen von HISTCONTROL erfolgen Variable auf 'ignoreboth' und 'erasedups'. Sie können dies folgendermaßen tun:

echo HISTCONTROL=ignoreboth:erasedups

Wenn Sie jetzt den Verlaufsbefehl ausführen, enthält die Ausgabe keine Duplikate.

Q8. Wie lösche ich den Verlauf?

Wenn Sie den vorhandenen Verlauf löschen möchten, damit Sie neu beginnen können, verwenden Sie die Befehlszeilenoption -c.

Geschichte -c

Schlussfolgerung

Sie werden wahrscheinlich zustimmen, dass die Geschichte ein sehr wichtiger Befehl ist, den Sie kennen sollten. In diesem Tutorial haben wir einige wichtige Tipps/Tricks besprochen, um das Beste aus diesem Tool herauszuholen. Sobald Sie diese geübt haben, besuchen Sie die Manpage des Tools, um weitere Informationen zu erhalten.


Linux
  1. Linux-CD-Befehls-Tutorial für Anfänger (8 Beispiele)

  2. Linux-Kommando-Tutorial für Anfänger (5 Beispiele)

  3. Linux-df-Befehls-Tutorial für Anfänger (8 Beispiele)

  4. Linux Date Command Tutorial für Anfänger (8 Beispiele)

  5. Linux-Hostname-Befehls-Tutorial für Anfänger (5 Beispiele)

Linux Who Command Tutorial für Anfänger (8 Beispiele)

Linux nl Command Tutorial für Anfänger (7 Beispiele)

Linux-nm-Befehls-Tutorial für Anfänger (10 Beispiele)

Linux OD Command Tutorial für Anfänger (6 Beispiele)

Linux w Command Tutorial für Anfänger (5 Beispiele)

Linux ss Command Tutorial für Anfänger (8 Beispiele)