Überblick über history
Jedes Mal, wenn der Benutzer einen Befehl im Terminal eingibt, wird dieser Befehl in einer Verlaufdatei (normalerweise `~/.bash_history` oder `~/.zsh_history`) aufgezeichnet. Der `history`-Befehl liest den Inhalt dieser Datei und zeigt ihn auf dem Bildschirm an, und der Verlauf wird auch nach Beendigung der Shell-Sitzung beibehalten.
Hauptfunktionen von history
`history`-Befehl wird hauptsächlich zu folgenden Zwecken verwendet:
Wichtige Anwendungsbereiche
- Befehl erneut ausführen: Frühere lange Befehle können einfach erneut ausgeführt werden, ohne sie erneut eingeben zu müssen.
- Aufgabenverfolgung: Hilft zu überprüfen, welche Aufgaben in der Vergangenheit ausgeführt wurden, und den Arbeitsablauf zu verstehen.
- Produktivitätssteigerung: Häufig verwendete Befehle schnell zu finden, spart Eingabezeit.
- Referenz für das Schreiben von Skripten: Verwendet erfolgreich ausgeführte Befehlskombinationen aus der Vergangenheit zum Schreiben von Skripten.
Umgebungsvariablen und history
Die Verlauffunktion wird von mehreren Umgebungsvariablen beeinflusst:
Wichtige verwandte Umgebungsvariablen
- `HISTSIZE`: Maximale Anzahl von Befehlen, die im Speicher gespeichert werden. Wird während der aktuellen Shell-Sitzung beibehalten.
- `HISTFILESIZE`: Maximale Anzahl von Befehlen, die in der Verlaufdatei (`~/.bash_history` usw.) gespeichert werden. Wird zwischen Shell-Sitzungen beibehalten.
- `HISTFILE`: Gibt den Pfad zur Datei an, in der die Befehlsverläufe gespeichert werden. Der Standardwert ist `~/.bash_history`.
- `HISTCONTROL`: Steuert die Art und Weise, wie der Verlauf aufgezeichnet wird. (z. B.: `ignoredups` - Duplikate ignorieren, `ignorespace` - Befehle, die mit Leerzeichen beginnen, ignorieren)
Wichtige history-Befehlsoptionen
`history`-Befehl bietet verschiedene Optionen zum Abfragen, Bearbeiten und Verwalten der Verlaufsliste.
1. Verlauf abfragen und anzeigen
2. Verlauf bearbeiten und erneut ausführen
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`history` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Verwendungsbeispiele
Lernen Sie, wie Sie den Verlauf des `history`-Befehls effektiv abfragen und wiederverwenden können, durch verschiedene Anwendungsbeispiele.
Die letzten 20 Befehle abfragen
history 20
Zeigt eine Liste der letzten 20 ausgeführten Befehle mit Nummern an.
Bestimmten String im Verlauf suchen
history | grep docker
Verwendet den `grep`-Befehl, um nach Befehlen zu suchen, die 'docker' im `history`-Verlauf enthalten.
Letzten `ls`-Befehl erneut ausführen
!ls
Führt den zuletzt ausgeführten Befehl, der mit `ls` beginnt, erneut aus.
Letzten Parameter des letzten Befehls wiederverwenden
cat /var/log/syslog
less !$
Nützlich, wenn Sie nach `cat /var/log/syslog` das Protokoll mit dem `less`-Befehl erneut öffnen möchten.
Aktuelle Shell-Verläufe sofort in Datei speichern
history -w
Speichert alle Befehle, die in der aktuellen Sitzung ausgeführt wurden, sofort in der `~/.bash_history`-Datei, bevor die Shell geschlossen wird.
Bestimmte Verlaufnummer löschen
history -d 125
Löscht den Befehl mit der Nummer 125, die beim Überprüfen mit dem `history`-Befehl angezeigt wird. (Achtung: Einmal gelöscht, kann nicht wiederhergestellt werden)