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

Wie kann ich mit ls nur nicht leere Dateien auflisten?

Ich würde find dirname -not -empty -ls verwenden , unter der Annahme von GNU find.


Dies ist ein Job für find ls ist nicht leistungsfähig genug.

find -maxdepth 1 -size +0 -print

-maxdepth 1 - Dies weist find an, nur das aktuelle Verzeichnis zu durchsuchen, remove, um in allen Unterverzeichnissen zu suchen, oder die Nummer zu ändern, um 2, 3 oder mehr Ebenen nach unten zu gehen.

-size +0 Dies weist find an, nach Dateien mit einer Größe von mehr als 0 zu suchen Bytes. 0 kann auf jede gewünschte Größe geändert werden.

-print weist find an, den vollständigen Pfad zu der gefundenen Datei auszugeben

Bearbeiten:
Späte Ergänzung:Sie sollten wahrscheinlich auch die -type f hinzufügen Schalter oben. Dies weist find an, nur Dateien zu finden. Und wie in den Kommentaren unten erwähnt, der -print Schalter wird nicht wirklich benötigt.


ls -l | awk '{if ($5 != 0) print $9}'

Wenn Sie beabsichtigen, ls zu verwenden , brauchen Sie ein wenig Hilfe von awk .


Linux
  1. Wie bekomme ich nur Dateien, die nach einem Date mit Ls erstellt wurden?

  2. Wildcards:Wie listet man Dateien mit der Endung „.txt“ nur auf, ohne das Punktzeichen zu verwenden??

  3. Wie kann ich unter Linux eine Liste von Dateien mit ihrem absoluten Pfad erstellen?

  4. Wie kann ich Dateien finden, die nur bestimmte Rechte für den Besitzer haben?

  5. Wie finde ich meine Shell-Version mit einem Linux-Befehl?

So finden Sie Dateien unter Linux

So finden Sie Dateien über die Befehlszeile im Linux-Terminal

So finden und listen Sie die Dateien rekursiv nach Datum in Linux auf

So finden Sie Dateien in Debian

Wie man alle Dateien und Verzeichnisse rekursiv auflistet

Linux-Befehl:Wie findet man nur Textdateien?