Platzhalter verwenden. Und fügen Sie es einfach in Ihren crontab
ein Verwenden Sie die crontab -e
Option zum Bearbeiten Ihrer Crontab-Jobs.
Siehe Beispiel:
* * * * * find /path/to/*.log -mtime +7 -exec rm -f {} \;
Um die Antwort zu erhöhen, sehen Sie sich diesen netten Artikel an, wie Sie mit Ihrem crontab
arbeiten ! unter Linux .
Sie bearbeiten Ihre persönliche crontab durch Ausführen von crontab -e
.Dies wird unter /var/spool/cron/<username>
gespeichert . Die Datei wird der Benutzername des Besitzers sein, also wäre root /var/spool/cron/root. Alles in der Datei wird als Eigentümer der Datei ausgeführt.
Die Syntax für crontab lautet wie folgt:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
Wenn Sie Ihre eigenen persönlichen bearbeiten crontab über crontab -e
, lassen Sie das Feld für den Benutzernamen weg, da der Benutzer aus dem Dateinamen abgeleitet wird (siehe erster Absatz).
Davon abgesehen sollte Ihr Eintrag so aussehen:
0 5 * * * find /path/to/*.log -mtime +7 -delete
Dies wird jeden Tag um 5:00 Uhr Systemzeit ausgeführt. Ich glaube nicht, dass Sie es häufiger als täglich ausführen müssen, da Sie Dateien entfernen, die 7 Tage dauern alt.
Bitte überbeanspruchen Sie nicht den -exec
Option, wenn -delete
Option tut genau das, was Sie tun möchten. Der Exec verzweigt eine Shell für jede Datei und verschwendet übermäßig Systemressourcen.
Wenn Sie fertig sind, können Sie crontab -l
verwenden um Ihre persönliche Crontab aufzulisten.
p.s. Der Standardeditor auf den meisten Linux-Systemen ist vi. Wenn Sie vi nicht kennen, verwenden Sie etwas Einfaches wie nano, indem Sie Ihre Umgebungsvariable export EDITOR=nano
setzen
find /path/to/dir-containing-files -name '*.log' -mtime +7 -exec rm -f {} \;
Um einen Cron-Job zu erstellen, legen Sie eine Datei mit folgendem Inhalt im Verzeichnis /etc/cron.daily ab:
#!/bin/sh
find /path/to/dir-containing-files -name '*.log' -mtime +7 -exec rm -f {} \;