Heute lernen wir, wie Sie den Inhalt einer Datei aus der Befehlszeile löschen, ohne die Datei selbst unter Linux und Unix-ähnlichen Betriebssystemen zu löschen. Das Entleeren von Dateien in Linux kann nützlich sein, wenn Sie die Berechtigungen und das Eigentum der Datei aufbewahren möchten, aber alle Inhalte entfernen möchten.
Inhaltsverzeichnis
Bevor wir lernen, wie man eine Datei schnell leert, ohne sie zu löschen, lassen Sie uns verstehen, warum und wann dies nützlich ist.
Das Löschen des Inhalts einer Datei ohne Löschen der Datei selbst kann aus mehreren Gründen wichtig sein, die häufig auf Systemverwaltung, Protokollierung und Anwendungsmanagement zusammenhängen:
Unabhängig vom Grund, wenn Sie jemals den Inhalt einer Datei löschen wollten, ohne ihn unter Linux zu löschen, finden Sie hier einige Möglichkeiten, dies zu tun.
In den folgenden 7 Methoden wird der Inhalt Ihrer Datei gelöscht, ohne die Datei selbst zu löschen.
1. Verwenden Sie> Umleitung :
Der> Operator unter Linux und Unix wird zur Umleitung verwendet. Bei Verwendung mit einem Dateinamen leitet es die Ausgabe eines Befehls in die Datei um. Wenn kein Befehl gegeben wird, leitet er "nichts" in die Datei um, wodurch der Inhalt gelöscht wird. Es ist eine einfache Methode, um Dateiinhalte unter Linux zu leeren und die Datei selbst intakt zu halten.
> Datei.txt
Ersetzen Sie Datei.txt durch Ihre eigenen.
2. Verwenden Sie den Befehl Truncate :
Der Befehl TRUNCATE wurde speziell entwickelt, um die Größe einer Datei zu ändern.
Ausführen:
TRUNCATE -S 0 Datei.txt
Indem Sie die Größe mit der Option -S 0 auf 0 Bytes einstellen, entfernen Sie alle Inhalte effektiv aus der Datei, ohne die Existenz der Datei oder ihre Metadaten wie Berechtigungen und Eigentum zu berühren.
3.. Verwenden Sie den Echo -Befehl mit Umleitung :
Der Befehl echo wird normalerweise verwendet, um eine Textzeile/Zeichenfolge anzuzeigen, die als Argument übergeben wird. In Kombination mit dem -n -Flag (das verhindert, dass das neue Zeilenzeichen hinzugefügt wird) und die Umleitung (>) in eine Datei, ersetzt es den Inhalt der Datei durch nichts, wodurch die Datei entleert wird. Diese Methode ist so einfach wie die direkte Umleitung, beinhaltet jedoch einen Befehl (Echo).
echo -n> file.txt
4. Verwenden des CP -Befehls mit /dev /null :
Mit dem Befehl cp wird zum kopieren von Dateien oder Verzeichnissen verwendet. Durch das Kopieren /Dev /Null in eine Datei ersetzen Sie im Wesentlichen den Inhalt der Datei durch den Inhalt /Dev /NULL (der immer leer ist) und löscht damit die Datei.
cp /dev /null Datei.txt
Diese Methode ist nützlich für Skripte und Programme, bei denen die Datei mit denselben Berechtigungen und dem gleichen Eigentum zugänglich bleibt.
5. Verwenden von SED -Befehl :
So löschen Sie alle Zeilen aus der Datei namens Datei.txt mit dem Befehl SED, aus:
SED -id -Datei.txt
Hier ist, was jeder Teil des Befehls tut:
6. Verwenden von VIM -Editor :
Sie können einen großen Dateiinhalt mit VIM -Editor löschen.
Öffnen Sie die Datei mit VIM -Editor:
vim file.txt
Drücken Sie die ESC -Taste und geben Sie Folgendes ein:
: 1, $ d
Tippen: 1, $ D in Vim führt einen Befehl aus, um alle Zeilen in der gesamten Datei zu löschen. Hier ist eine Aufschlüsselung dessen, was jeder Teil des Befehls tut:
Also: 1, $ D fordert Vim auf, alle Zeilen von der ersten Zeile zur letzten Zeile der Datei zu löschen. Nach der Ausführung dieses Befehls ist die Datei leer.
7. Verwenden des DD -Befehls :
Der DD-Befehl ist ein Datenkopierprogramm auf niedrigem Niveau, das Daten zwischen Dateien, Geräten oder Partitionen kopieren und konvertieren kann.
Durch das Kopieren von Daten von /dev /null in die Datei (von = Datei.txt) schreiben Sie effektiv Null -Bytes in die Datei und löschen ihren Inhalt. Es ist ein bisschen übertrieben für diese Aufgabe, aber nützlich für seine Vielseitigkeit.
dd if =/dev/null von = file.txt
In diesem Tutorial haben wir fünf verschiedene Befehlszeilenmethoden besprochen, um den Inhalt einer Datei zu entleeren, ohne die Datei selbst unter Linux zu löschen. Mit diesen Befehlen können Sie die Berechtigungen, Eigentum und symbolischen Links der Datei beibehalten und gleichzeitig deren Inhalt zurücksetzen.
Unabhängig davon, ob Sie Protokolldateien verwalten, Konfigurationsdateien zurücksetzen oder einfach eine Datei für eine andere Verwendung löschen müssen, bieten diese Tools eine einfache und schnelle Möglichkeit, dies zu tun.
Das obige ist der detaillierte Inhalt vonSo leeren Sie die Dateien schnell, ohne sie unter Linux und Unix zu löschen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!