Bei der Arbeit mit der Bash-Befehlsshell kann es vorkommen, dass der Befehlsverlauf lang und verwirrend wird. Möglicherweise möchten Sie bestimmte Befehle aus dem Verlauf entfernen oder vollständig löschen. Unabhängig von Ihrem Ziel hilft Ihnen das Löschen des Befehlshistoriums, die Ausgabe der Befehlsschnittstelle zu verwalten und die Suche nach benötigten Informationen zu erleichtern.
Das Löschen des Befehlshistoriums in Bash kann auf verschiedene Arten erreicht werden. In einem Ansatz können Sie einen bestimmten Befehl mit einem Befehl löschen history -d Geben Sie die Nummer des Befehls an, den Sie löschen möchten. Eine andere Möglichkeit besteht darin, eine Umgebungsvariable zu verwenden HISTIGNORE, um bestimmte Befehle aus dem Verlaufsdatensatz auszuschließen. Dies ist besonders nützlich, wenn Sie nicht möchten, dass bestimmte Befehle im Verlauf gespeichert werden.
Wenn Sie den gesamten Befehlshistorie löschen möchten, existiert ein Befehl history -c, die alle Einträge aus der Befehlshistorie vollständig löscht. Beachten Sie, dass Sie beim Löschen des Befehlshistoriums mit diesem Befehl keine gelöschten Einträge wiederherstellen können.
Es ist wichtig sich daran zu erinnern, dass das Löschen des Befehlshistoriums nützlich sein kann, aber auch gefährlich ist, wenn Sie Befehle, die gelöscht wurden, überprüfen oder wiederherstellen möchten. Daher wird empfohlen, wichtige Befehle vor dem Löschen des Befehlshistoriums zu sichern und in einer separaten Datei zu speichern.
Löschen des Befehlshistoriums in Bash: Schritt für Schritt Anleitung
Das Löschen des Befehlshistoriums in Bash kann nützlich sein, wenn Sie nicht möchten, dass einige Befehle im Verlauf gespeichert werden oder einfach nur Ihren Befehlshistorik sauber und organisiert halten möchten. In dieser Schritt-für-Schritt-Anleitung erfahren Sie, wie Sie den Befehlshistorie in Bash löschen.
| Schritt | Das Team | Die Beschreibung |
|---|---|---|
| Schritt 1 | history | Geben Sie den Befehl history im Terminal ein, um eine Liste aller Befehle in Ihrem Verlauf anzuzeigen. |
| Schritt 2 | history -c | Geben Sie den Befehl history -c ein, um den Befehlshistorie zu löschen. Dadurch werden alle Befehle aus dem Verlauf entfernt. |
| Schritt 3 (optional) | history -d N | Wenn Sie einen bestimmten Befehl aus dem Verlauf entfernen möchten, geben Sie den Befehl history -d N ein, wobei N die Nummer des zu löschenden Befehls darstellt. Zum Beispiel wird history -d 10 den 10. Befehl aus dem Verlauf entfernen. |
Nachdem Sie diese Schritte ausgeführt haben, wird Ihr Befehlshistorie in Bash gelöscht und enthält keine Befehle. Denken Sie daran, dass das Löschen des Befehlshistoriums nicht rückgängig gemacht werden kann. Seien Sie also vorsichtig, wenn Sie es verwenden.
Bestimmen der Notwendigkeit für die Reinigung
Das Löschen des Befehlshistoriums in Bash kann aus verschiedenen Gründen hilfreich sein. Es gibt einige wichtige Faktoren, die darauf hindeuten können, dass der Befehlshistorie gelöscht werden muss:
vertrauliche Angaben: Ihr Befehlshistorie kann sensible Daten wie Passwörter oder Zugriffsschlüssel enthalten. Diese Geheimnisse in der Teamgeschichte zu hinterlassen, kann riskant und nicht sicher sein.
Persönliche Privatsphäre: Ihr Befehlshistorie kann Informationen über Ihre Aktivitäten enthalten, die Sie nicht speichern möchten. Zum Beispiel könnten Sie einen Befehl falsch eingeben oder temporäre Lösungen verwenden, die Sie nicht im Verlauf speichern möchten.
Veraltete oder unnötige Befehle: Ihr Befehlshistorie kann veraltete oder unnötige Befehle enthalten, die nicht mehr verwendet werden oder nicht mehr benötigt werden. Das Löschen des Befehlshistoriums hilft Ihnen, nur die aktuellen Befehle beizubehalten.
Geschichte verschönern: Einige Benutzer löschen den Befehlshistorie, um zu vermeiden, dass andere Benutzer ihre Befehle anzeigen und analysieren können. Dies kann getan werden, um die Privatsphäre zu schützen und mögliche Probleme zu vermeiden.
Produktivität: Das Entfernen alter historischer Befehle kann auch dazu beitragen, die Leistung der Bash-Shell zu verbessern, indem die Größe der historischen Datei reduziert und der Zugriff auf Befehle beschleunigt wird.
Wenn Ihnen also Sicherheit, Datenschutz, Privatsphäre, weniger Belastung und Leistungsoptimierung wichtig sind, können Sie mit den folgenden Schritten den Befehlshistorie in Bash löschen.
Anzeigen des Befehlshistoriums
Unter Linux bietet die Befehlszeilenumgebung (Shell) die Möglichkeit, den Verlauf der eingegebenen Befehle anzuzeigen. Dies ist sehr praktisch, da Sie zuvor eingegebene Befehle leicht finden und wiederholen können, ohne sie erneut eingeben zu müssen.
Sie können verschiedene Methoden verwenden, um den Befehlshistorie in Bash anzuzeigen:
- Verwenden der Pfeiltasten: Durch Eingabe des Befehls "history" können Sie den vollständigen Verlauf ausgeführter Befehle anzeigen, und Sie können mit den Aufwärts- und Abwärtspfeilen nach oben und unten blättern.
- Verwenden des Flag "-n": Mit dem Befehl "history -n" können Sie nur neue Befehle ausgeben, die noch nicht im Verlauf gespeichert sind.
- Verwenden des Befehls "grep": Sie können den Befehl "history | grep " verwenden, um nach einem bestimmten Befehl im Verlauf zu suchen. Zum Beispiel gibt "history | grep ls" alle Befehle aus, die "ls" enthalten.
Der Befehlshistorie in Bash wird in der Datei ~/ gespeichert.bash_history. Sie können den Inhalt dieser Datei mit dem Befehl "cat ~/" anzeigen.bash_history" oder öffnen Sie es in einem Texteditor.
Durch die Möglichkeit, den Befehlsverlauf in Bash anzuzeigen, können Sie zuvor eingegebene Befehle leicht finden und wiederholen, was die Arbeit an der Eingabeaufforderung vereinfacht und die Effizienz erhöht.
Löschen des gesamten Befehlshistoriums
Wenn Sie den Befehlshistorie in Bash vollständig löschen möchten, befolgen Sie die folgenden Schritte:
- Öffnen Sie ein Terminal und führen Sie den Befehl history -c aus. Dieser Befehl löscht den aktuellen Befehlshistorie in der aktuellen Sitzung. Es wird jedoch nicht alle vorherigen Einträge löschen.
- Öffnen Sie die Datei ~/.bash_history mit einem Texteditor. Diese Datei speichert den Verlauf aller Ihrer Befehle.
- Löschen Sie den Inhalt der Datei, und speichern Sie die Änderungen. Dies kann beispielsweise mit dem Befehl echo "" > ~/ erfolgen.bash_history .
- Führen Sie den Befehl history -w aus, um sicherzustellen, dass alle vorherigen Verlaufsdatensätze gelöscht werden. Dadurch wird der im RAM gespeicherte Befehlshistorie in eine leere Datei überschrieben.
Nachdem Sie alle diese Schritte ausgeführt haben, wird der gesamte Befehlshistorie in Bash vollständig gelöscht. Es ist wichtig zu beachten, dass das Löschen des Befehlsverlaufs nicht rückgängig gemacht werden kann. Stellen Sie daher sicher, dass Sie vor dem Ausführen dieser Schritte eine Sicherungskopie Ihrer wichtigen Befehlseinträge haben, falls Sie sie in Zukunft benötigen.
Löschen einzelner Befehle aus dem Verlauf
Falls Sie einzelne Befehle aus dem Verlauf in Bash entfernen müssen, können Sie mit dem Befehl history eine Liste aller Befehle anzeigen und dann die Option -d mit der Nummer des zu löschenden Befehls verwenden:
| Das Team | Die Beschreibung |
|---|---|
| history | Zeigt eine Liste aller Befehle an |
| history -d [befehlsnummer] | Entfernt den angegebenen Befehl aus dem Verlauf |
Wenn Sie beispielsweise den dritten Befehl aus dem Verlauf entfernen möchten, führen Sie den folgenden Befehl aus:
history -d 3
Nachdem dieser Befehl ausgeführt wurde, wird der dritte Befehl aus dem Verlauf entfernt und kann nicht mehr mit der Nach-Oben-Taste ( ↑ ) oder dem Befehl aufgerufen werden ! .
Beachten Sie, dass das Löschen von Befehlen aus dem Verlauf nur dazu führt, dass sie aus der aktuellen Sitzung gelöscht werden. Wenn Sie das Terminal neu starten oder eine neue Sitzung öffnen, wird der Befehlshistorie aktualisiert und die gelöschten Befehle sind wieder verfügbar.
Wenn Sie mehrere Befehle aus dem Verlauf entfernen müssen, können Sie eine der folgenden Methoden verwenden:
- Löscht einen Befehl mit einem bestimmten Inhalt mit dem Befehl history -d und dem entsprechenden Schlüsselwort. Führen Sie beispielsweise den folgenden Befehl aus, um alle Befehle zu löschen, die das Wort "Passwort" enthalten:
history | grep "password" | awk '' | bash
- Zeigt eine Liste aller Befehle mit deren Nummern an und löscht dann mehrere Befehle mit dem Befehl history -d und deren Nummern. Um beispielsweise die Befehle 5, 8 und 10 zu löschen, führen Sie die folgenden Befehle aus:
history
Notieren Sie sich die Befehlsnummern, die Sie löschen möchten, und führen Sie sie für jeden Befehl aus:
history -d [номер_команды]
Nachdem Sie diese Befehle ausgeführt haben, werden die entsprechenden Befehle aus dem Verlauf entfernt.
Verbieten der Aufzeichnung des Befehlshistoriums
Manchmal ist es hilfreich, das Schreiben des Befehlsprotokolls in die Bash-Befehlsshell zu verbieten. Dies kann nützlich sein, wenn Sie mit sensiblen Daten arbeiten oder einfach nicht möchten, dass jemand Ihre Befehle sieht. Hier sind einige Möglichkeiten, um das Schreiben des Befehlshistoriums in Bash zu verhindern:
- Setzt die Variable HISTFILE auf eine leere Zeichenfolge: Führen Sie in der Befehlszeile den folgenden Befehl aus: export HISTFILE= . Dadurch werden die Befehle nicht in die Verlaufsdatei geschrieben.
- Verwenden Sie den Befehl ignoreboth: Führen Sie den Befehl set -o ignoreboth aus. Dadurch wird das Schreiben des Befehlshistoriums deaktiviert und Leerzeichen am Anfang der Zeile ignoriert.
- Setzen Sie die Variable HISTSIZE auf 0: Geben Sie den Befehl export HISTSIZE=0 ein . Dadurch wird der Befehlsverlaufsdatensatz deaktiviert und alle vorherigen Befehle aus dem Verlauf entfernt.
Nachdem Sie einen dieser Befehle ausgeführt haben, wird der Befehlshistorie in Bash nicht mehr aufgezeichnet. Beachten Sie, dass dies vorübergehende Änderungen sind und nur in der aktuellen Shell-Sitzung wirksam sind. Wenn Sie möchten, dass diese Änderungen dauerhaft sind, müssen Sie der Datei ~/ den entsprechenden Befehl hinzufügen.bashrc oder ~/.bash_profile . Auf diese Weise werden Ihre Einstellungen bei jedem Start der Shell automatisch geladen.
Das Verbot, den Befehlshistorie in Bash zu schreiben, ist eine einfache Möglichkeit, Ihre Aktionen in der Befehlsshell privat zu halten und zu schützen. Nutzen Sie diese Gelegenheit, wenn Sie sie für Ihre Bedürfnisse nützlich halten.