Léa-Linux & amis :   LinuxFR   GCU-Squad   Zarb.Org   GNU
Archive de la liste aide - [Aide] Lancer un cron le dernier jour du mois
Tous les chemins mènent à Rome, mais certains sont plus pénibles et
dangeureux, alors on pourrait dire bien des choses en somme.


1) Proposition 1
Principe KISS: faire une solution qui marche, et simple, même style bourrin.

Lancer un script tous les jours à 23h30, en vérifiant si c'est bien le
dernier jour du mois.

Tu peux utiliser ton test,
ou te servir de l'astuce suivante pour déterminer le dernier jour du mois
en cours:
<code>
date --date "next month - $(date +%d) day"
</code>

Que tu peux comparer au jour en cours, aussi.


<!> Piège de conception: Attention quand même, si le système est chargé, et
que le script que tu comptais lancer à 23h30 ne tourne que 31 minutes plus
tard, il ne s'exécutera pas comme tu l'entends, puisque le jour sera le
premier du mois, et non le dernier...



2) Proposition 2
Philosophie Unix: Faire un pgm qui marche, puis optimiser

Pour éviter de faire tourner ce script tous les jours, et éviter le bug de
conception cité, tu pourrais écrire un script qui s'exécute tranquillement
le premier du mois, par [cron], et qui va créer une tâche qui ne
s'exécutera une seule fois, au dernier jour du mois, grâce à la commande
[at]

Le dernier jour du mois en cours étant toujours déterminable par :
<code>
date --date "next month - $(date +%d) day"
</code>




3) Proposition 3
Prendre du recul par rapport à la demande du client et remettre en cause
son "comment".

En prenant un peu de recul par rapport à ta demande initiale, pour faire
encore plus simple, tu pourrais simplement lancer le backup le premier jour
du mois à la première minute du jour par [cron], s'il n'y a pas de problème
pour décaler ton backup de 30mn. Simple et robuste. :-)

--P

​
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lea-linux.org/pipermail/aide/attachments/20140902/c5aba7a1/attachment.html>

Serveur hébergé par ST-Hebergement et Lost-Oasis / IRC hébergé par FreeNode / NS secondaire hébergé par XName
Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons