Löschen Sie Dateien, die älter als ein bestimmtes Datum sind
Haben Sie jemals alte Dateien aus einem Ordner bereinigen müssen? Dies ist besonders nützlich, wenn Sie versuchen, zu verhindern, dass ein Protokollverzeichnis mit Dateien überfüllt wird und Linux es sehr einfach macht, den Müll zu löschen.
Wir suchen einfach mit dem Befehl find nach allen Dateien, die älter als ein bestimmtes Datum sind, und verwenden Sie dann den Befehl -exec, um sie zu löschen. Sie können stattdessen den Befehl -delete verwenden, aber bei zu vielen Dateien erhalten Sie ein Maximum an Argumenten.
Befehlssyntax suchen
find / path / to / files * -mtime +5 -exec rm ;
Beachten Sie, dass zwischen rm, und; Leerzeichen stehen.
Erklärung für den Befehl
- Das erste Argument ist der Pfad zu den Dateien. Dies kann ein Pfad, ein Verzeichnis oder ein Platzhalter sein, wie im obigen Beispiel. Ich würde empfehlen, den vollständigen Pfad zu verwenden, und stellen Sie sicher, dass Sie den Befehl ohne den Exec Rm ausführen, um sicherzustellen, dass Sie die richtigen Ergebnisse erhalten.
- Das zweite Argument, -mtime, wird verwendet, um die Anzahl der Tage anzugeben, in denen sich die Datei befindet. Wenn Sie +5 eingeben, werden Dateien gefunden, die älter als 5 Tage sind.
- Mit dem dritten Argument, -exec, können Sie einen Befehl wie rm übergeben. Das ; am Ende ist erforderlich, um den Befehl zu beenden.
Das funktioniert so ziemlich auf jeder NIX-Distribution.