Cron Job Clean Verzeichnis

Cron Job Clean Verzeichnis

Wie kann man mit einem Cron-Job Dateien löschen, die älter als 14 Tage in einem Ordner sind? Alles was ich bisher versucht habe, hat nicht funktioniert.

Antwort1

Dies sollte mit ganz einfach möglich sein find. Führen Sie einfach diesen Befehl in Ihrem aus crontab(dadurch werden Dateien und Unterverzeichnisse gelöscht):

find /path/to/target -mtime +14 -delete

Ausman find

   -mtime n
          File's data was last modified n*24 hours ago.  

   Numeric arguments can be specified as

   +n     for greater than n,

   -n     for less than n,

   n      for exactly n.


   -delete
          Delete files; true if removal succeeded.  If the removal failed,
          an  error message is issued.  If -delete fails, find's exit sta‐
          tus will be nonzero (when it eventually exits).  Use of  -delete
          automatically turns on the -depth option.

Ich bin nicht sicher, ob -deletees POSIX ist, aber wenn Ihre Implementierung von find fehlt -delete, können Sie auch verwenden

find /path/to/target -mtime +14 -exec rm {} +

verwandte Informationen