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

Alle Dateien und Ordner in /tmp löschen, die älter als einen Tag sind?

Ich versuche, alle Dateien und Ordner in /tmp zu löschen dir, die älter als ein Tag sind.

Ich weiß, dass ich alle Dateien und Ordner löschen muss, die ich tun muss

rm -rf *

Aber ich bin mir nicht sicher, wie ich sonst alle Dateien und Ordner finden kann, die älter als einen Tag sind, um sie zu löschen und den Cron einzufügen.

Akzeptierte Antwort:

Verwenden Sie zuerst find um diese Dateien auszuwählen:

find /tmp -mmin +1440

findet Dateien, die vor mehr als 1440 Minuten geändert wurden. (Es gibt eine Option, Tage anstelle von Minuten zu verwenden, aber es wird aufgerundet und +1 bedeutet leider 2 Tage oder mehr. Siehe Hinweis unten).

Versuchen Sie dies, und wenn Sie zufrieden sind, dass dies die richtigen Dateien findet, löschen Sie sie auf einmal:

find /tmp -mmin +1440 -delete

Siehe man find für andere Möglichkeiten (Zeit der letzten Statusänderung, Zugriffszeit).

Hinweis zur Verwendung von -mtime +1 :

In Mann finden

Da steht:

-mtime n

Die Daten der Datei wurden zuletzt vor n*24 Stunden geändert.

Aber es heißt auch:

Siehe die Kommentare für -atime um zu verstehen, wie Rundungen die
Interpretation von Dateiänderungszeiten beeinflussen.

Die Kommentare für -atime sagen:

Wenn find herausfindet, vor wie vielen 24-Stunden-Zeiträumen zuletzt
auf die Datei zugegriffen wurde, wird jeder Bruchteil ignoriert, um -atime +1 abzugleichen , auf eine
Datei muss vor mindestens zwei Tagen zugegriffen worden sein.

Mit anderen Worten, -mtime kann nur in Einheiten von 24 Stunden oder einem Tag bis zu -mtime +1 gezählt werden geht, bedeutet dies genau mehr als einen Tag um mindestens einen Tag ( dh zwei Tage+ )

-mmin andererseits kann in Minuten gezählt werden. Wenn es also auf absolute Genauigkeit ankommt, dann -mmin +1440 ( 1440 Minuten =1 Tag ) könnte anstelle von -mtime +1 verwendet werden


Ubuntu
  1. Verwenden Sie Suchen, um ein bestimmtes Verzeichnis zu finden und alle darin enthaltenen Dateien außer einem Verzeichnis zu löschen?

  2. Dateien mit mehr als 100 Zeilen in einem Verzeichnis und in allen Unterverzeichnissen auflisten?

  3. Wie erstelle ich einen Cron-Job, der automatisch Dateien löscht, die älter als 30 Tage sind?

  4. So finden und löschen Sie Dateien, die älter als ein bestimmter Zeitraum in Linux sind

  5. Dateien oder Ordner finden und löschen, die älter als x Tage sind

Die 3 besten Tools zum Suchen und Löschen doppelter Dateien in Linux

So finden und löschen Sie doppelte Dateien in Ubuntu mit Fdupes

So löschen Sie Dateien, die älter als die angegebenen Tage in Linux sind

So entfernen Sie Dateien und Verzeichnisse unter Linux

Verzeichnisse mit allen Dateien finden, die älter als X sind?

Alle /var/log löschen?