Einen crontab-Job alle 2 Tage ausführen

Datum: 2001-06-27
Quelle: suse-linux

Worum ging es?

Über den crontab-Mechanismus kann man auf Unix-Systemen die Ausführung eines Programms recht komfortabel steuern. Wenn man einen Job alle 2 Tage erledigt haben will, geht das z. B. mit:
0 0 */2 * * /pfad/zum/programm,
einzutragen in der crontab-Datei des Benutzers. Damit wird der Job an jedem 2. Tag des Monats um 0:00 Uhr ausgeführt. Dummerweise haben aber nicht alle Monate exakt 30 Tage, damit kommt es zu Verschiebungen. Wer damit nicht leben kann, dem ist vielleicht mit folgendem Script geholfen.

Code
RUN_FILE=/var/run/cron_2_days
if test -f $RUN_FILE; then
  rm $RUN_FILE
  exit 0
fi
cronjob_to_start
echo done >$RUN_FILE
Beschreibung

Wenn die Datei $RUN_FILE nicht existiert, wird das Programm gestartet und sie angelegt (1. Tag). Existiert sie (2. Tag), wird sie gelöscht und das Script abgebrochen. Dieses Script startet man nun täglich per cron.