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

Wie löschen Sie Dateien, die älter als ein bestimmtes Datum in Linux sind?

find ~ -type f ! -atime 4|xargs ls -lrt

Dadurch werden Dateien aufgelistet, auf die älter als 4 Tage zugegriffen wurde , Suche im Home-Verzeichnis.


Sie können Ihren Zeitstempel als Datei berühren und als Bezugspunkt verwenden:

z.B. für den 1. Januar 2014:

touch -t 201401010000 /tmp/2014-Jan-01-0000

find /path -type f ! -newer /tmp/2014-Jan-01-0000 | xargs rm -rf 

das funktioniert, weil find hat eine -newer Schalter, den wir verwenden.

Ab man find :

-newer file
       File  was  modified  more  recently than file.  If file is a symbolic
       link and the -H option or the -L option is in effect, the modification time of the 
       file it points to is always used.

Diese andere Antwort verschmutzt das Dateisystem und find selbst bietet eine "Löschen"-Option. Wir müssen die Ergebnisse also nicht an xargs weiterleiten und dann ein rm ausgeben.

Diese Antwort ist effizienter:

find /path -type f -not -newermt "YYYY-MM-DD HH:MI:SS" -delete

Das funktioniert bei mir:

find /path ! -newermt "YYYY-MM-DD HH:MM:SS" | xargs rm -rf

Linux
  1. Wie lösche ich alle Dateien, die älter als X Tage in Linux sind?

  2. Linux – Wie finde ich das Erstellungsdatum der Datei?

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

  4. So finden und löschen Sie leere Verzeichnisse und Dateien in Linux

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

So finden und löschen Sie Dateien, die einen bestimmten Text in ihrem Namen in Linux enthalten

So finden Sie Dateien basierend auf dem Zeitstempel in Linux

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

So finden Sie Dateien, die eine bestimmte Textzeichenfolge in Linux enthalten

So finden Sie Dateien, die in den letzten 24 Stunden in Linux geändert wurden

So löschen Sie Dateien, die in einer anderen Datei unter Linux aufgeführt sind