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

So finden und löschen Sie leere Verzeichnisse und Dateien in Unix

Frage: Wie finde ich leere Verzeichnisse, die keine Dateien enthalten? Außerdem, wie finde ich alle leeren Dateien (Null-Byte-Dateien) in Linux?

Antwort: Sie können den Unix-Befehl find verwenden, um eine Liste aller leeren Dateien und Verzeichnisse zu erhalten wie unten erklärt.

Siehe auch unsere früheren Artikel über Unix-Beispiele für Find-Befehle – Teil 1 und Beispiele für Find-Befehle – Teil 2.

Finde leere Verzeichnisse im aktuellen Verzeichnis mit find -empty

find . -type d -empty

Verwenden Sie den folgenden Befehl, um alle leeren Verzeichnisse unter dem aktuellen Verzeichnis zu entfernen.

find . -type d -empty -exec rmdir {} \;

Hinweis: Es wird nicht empfohlen, leere Verzeichnisse aus /etc/ oder anderen Systemverzeichnissen zu entfernen.

Finde leere Dateien im aktuellen Verzeichnis mit find -empty

find . -type f -empty

Hinweis:Typischerweise werden leere Dateien von einigen Programmen als Platzhalter oder als Lock-Dateien oder als Socket-Dateien für die Kommunikation erstellt.

Wie viele leere Dateien befinden sich im aktuellen Verzeichnis (und Unterverzeichnissen)?

Um die Anzahl der leeren Dateien im aktuellen Verzeichnis zu zählen, leiten Sie den Befehl find an wc -l

weiter
find . -type f -empty | wc -l

Wie viele nicht leere Dateien befinden sich im aktuellen Verzeichnis (und Unterverzeichnissen)?

find . -type f -not -empty | wc -l

Hinweis: Suchoption -not kehrt die folgende Option zurück.

Ersetzen Sie in allen obigen Beispielen den Punkt ( . ) durch einen beliebigen anderen Verzeichnispfad, unter dem Sie die Dateien suchen möchten.

Mama, ich habe es gefunden! — 15 Praktische Beispiele für Linux-Suchbefehle Tutorial erklärt die MaxTiefe, MinTiefe und Invert-Match des Find-Befehls.


Linux
  1. Finden Sie Dateien und Verzeichnisse in Linux wie ein Profi

  2. So löschen Sie Dateien und Verzeichnisse in Linux über die Befehlszeile

  3. Wie kann ich leere Verzeichnisse in meinem Home-Verzeichnis rekursiv löschen?

  4. Wie kann ich alle leeren Dateien und Verzeichnisse in Linux rekursiv löschen?

  5. Wie finde ich alle Dateien und Verzeichnisse, die von einem bestimmten Benutzer beschreibbar sind?

So komprimieren Sie Dateien und Verzeichnisse unter Linux

So finden und löschen Sie doppelte Dateien in Linux

So finden und löschen Sie leere Verzeichnisse in Linux

So entfernen Sie Dateien und Verzeichnisse unter Linux

Finden Sie Dateien und Verzeichnisse unter Linux ganz einfach

So löschen Sie Dateien und Verzeichnisse mit der Linux-Befehlszeile