Tout est dans le titre mais j'avoue, je peux préciser.
Soit un job J que je ne dois exécuter qu'une seule fois par jour. Pour ne pas oublier je le mets dans le crontab de mon PC.
Mais je ne suis pas au boulot (je suis retraité); ainsi mon PC je l'utilise à des moments de ma convenance, c'est à dire n'importe quand. Et entre les deux, je rabats l'écran et il se met en veille.
J'avais mis le job J à 5h05 du matin (j'aurais pu le mettre n'importe quand) en pensant que si l'heure était dépassée le crontab essayerait de rattraper le temps perdu. Que nenni.
En fait je m'étais inspiré d'un crontab toutes les heures qui lui, si on est en retard, il lance le job.
Détails techniques: crontab
Code : Tout sélectionner
#-------------- Sauvegarde du répertoire du Rasopberry
5 5 * * * bash /home/patrick/Documents/Programmes/dailyBackup.sh
5 8-22 * * * bash /home/patrick/Documents/Programmes/dailyBackup.sh
Code : Tout sélectionner
2025-01-16T09:05:01.182517+01:00 HP-Victus patrick: /home/patrick/Documents/Programmes/dailyBackup.sh [I] Nothing to do
2025-01-16T10:35:14.737498+01:00 HP-Victus patrick: /home/patrick/Documents/Programmes/dailyBackup.sh [I] Nothing to do
2025-01-16T14:05:01.483734+01:00 HP-Victus patrick: /home/patrick/Documents/Programmes/dailyBackup.sh [I] Nothing to do
2025-01-16T16:04:39.514825+01:00 HP-Victus patrick: /home/patrick/Documents/Programmes/dailyBackup.sh [I] Nothing to do
2025-01-16T16:05:01.533343+01:00 HP-Victus patrick: /home/patrick/Documents/Programmes/dailyBackup.sh [I] Nothing to doDonc un traitement quotidien qui est en retard ne se relance pas, mais un traitement horaire essaye de rattraper son retard.
Ai-je bien expliqué, et ai-je bien compris ce que j'ai cru comprendre ?
Pour parer mon problème j'utilise dans ma procédure des "logger" et autre "egrep" mais j'aurai préféré faire plus simple.
Une idée ?
PS : pas d'urgence, ça marche, mais c'est pas beau.
Cdlt
