Ich möchte Dateien (mit Teer) archivieren, die weniger als 3 MB groß sind. Ich möchte aber auch die Verzeichnisse behalten, in denen diese Dateien vorhanden sind. (Ich kann also keinen find
Befehl verwenden). Ich möchte nur die Dateien vermeiden, die größer als 3 MB sind. Wie kann das gemacht werden?
11
find
wieder benutzen ?Antworten:
Einfacher als Sie denken:
Verwenden Sie in einem halbbezogenen Hinweis (in Bezug auf Ihre Aussage, dass Sie find nicht verwenden können), um eine Liste aller Dateien (einschließlich Verzeichnisse) unter einem Pfad abzüglich Dateien größer als 3 MB zu erhalten, Folgendes:
Sie könnten dann tun:
Aber ich würde das erste vorziehen, da es einfacher ist, klar ausdrückt, was Sie wollen, und zu weniger Überraschungen führt.
quelle
Wenn der Dateiname eckige Klammern enthält, müssen Sie in einigen Systemen explizit ausschließen. Beispielsweise
quelle
Wenn Sie versuchen, dies auf einem Server über SSH zu tun, funktioniert dies aus diesem Grund nicht . Um dies zu umgehen, können Sie Pipes und Xargs verwenden:
quelle