J'ai un travail cron qui fonctionne à 0 0 * * 0/2 - c'est-à-dire tous les deux dimanches. Il vient de fonctionner, par exemple. Cependant, je veux qu'il fonctionne les autres dimanches - dimanche prochain, plutôt que celui-ci. Une autre façon de le dire: je présume qu'il fonctionne les dimanches pairs de l'année, mais je veux qu'il fonctionne les dimanches impairs.
Je ne vois rien dans "man 5 crontab" qui pourrait m'aider avec cela, donc je suppose que je dois revenir à l'exécution du cronjob à 0 0 * * 0 puis faire quelque chose dans la commande que je lance pour vérifier quel dimanche il est. Quelqu'un peut-il m'aider avec une astuce de ligne de commande appropriée pour cela?
ETA: j'ai réalisé que mon 0/2 ne faisait pas du tout ce que je pensais à l'origine (un dimanche sur deux). Il fonctionne tous les dimanches, tant que ce jour de la semaine est divisible par deux, ce qui est bien sûr le cas. D'oh. Quoi qu'il en soit, l'exigence fondamentale demeure: exécuter une commande les dimanches impairs.
Réponses:
Je ne prétendrai pas avoir tenté cette tâche particulière moi-même, mais cette question de débordement de pile contient des réponses qui montrent une ruse potentielle en ligne de commande: /programming/350047/how-to-instruct-cron-to- exécuter un travail toutes les deux semaines
la source
eval
blocs pour en ajouter un, puis de faire le modulo 2. C'est moche au mieux, mais je suppose que cela pourrait fonctionner.date +\%W
\% 2> / dev / null || tout ... Cependant, pour obtenir les impaires semaines numérotées, je veux faire « && tout » au lieu de ||