Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1015 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Problème de codage d'une crontab

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de codage d'une crontab

n°1407807
NickS2000
Posté le 13-09-2017 à 09:09:04  profilanswer
 

Bonjour,
 
J'ai un souci pour coder une crontab quelque chose qui pourtant me paraissait semble.  :pfff:  
 
Je veux exécuter une commande, chaque second dimanche du mois à 02h05
 
Voilà comment j'avais codé ça :
5 2 8-14 3,6,9,12 0  
 
Mais en fait, le script s’exécute du 8 à 14 ET tous les dimanches.  :(  
Je pensais que c'était un opérateur ET entre 8-14 et 0, mais c'est OU.
 
Savez vous comment coder "deuxième dimanche" ?
 
Meric  :jap:

mood
Publicité
Posté le 13-09-2017 à 09:09:04  profilanswer
 

n°1407809
Profil sup​primé
Posté le 13-09-2017 à 09:18:37  answer
 

salut,
 
ça ne se "code" pas en cron, il faut le scripter.
c'est une FAQ, tu devrais rapidement trouver une solution après quelques recherches sur le net.
 
tiens-nous au courant.

n°1407812
NickS2000
Posté le 13-09-2017 à 09:28:23  profilanswer
 

Merci, il me semblait bien que ce n'était pas "codable" en cron.
 

n°1407813
NickS2000
Posté le 13-09-2017 à 09:29:18  profilanswer
 


Tous les derniers dimanches du mois :
Première solution : comparer tous les dimanches avec celui de la semaine d'après.
 0 0 * * 0 [ `/bin/date +\%d` -gt `/bin/date +\%d -d "7 day"` ]

n°1407819
Profil sup​primé
Posté le 13-09-2017 à 10:50:31  answer
 

« tous les dimanches, comparer la date avec la date de la semaine d'après » ?
il y a peu de chances qu'un jour la date soit même égale à celle de la semaine d'après ! :)
 
ça n'a l'air de rien, mais c'est pas si facile d'expliquer à un ordinateur ce que nous visualisons intuitivement. :/
et expliquer l'algorithme sans donner le code n'est pas facile non plus. :(
 
de mon côté, je me suis basé sur le numéro du jour du premier jour du mois.
il y a alors trois cas à prendre en considération :
- le numéro du premier jour du mois est inférieur au numéro du jour cible
   => référence = numJourCible - numPremJourMois
- le numéro du premier jour du mois est supérieur au numéro du jour cible
   => référence = nbJoursSemN - numPremJourMois + numJourCible
- le numéro du premier jour du mois est égal au numéro du jour cible
   => référence = 0
 
ensuite, je fais d'autres calculs...
 
tout ça pour dire, que c'est pas si simple.

n°1413735
alokkin
tourner 7 fois la langue ...
Posté le 29-01-2018 à 09:00:36  profilanswer
 

if [[ ${madate:8:2} -ge 8 && ${madate:8:2} -le 14 && $(date -d $madate +'%w') -eq 0 ]]; then echo "ok"; else echo "ko";fi
 
Normalement, ca devrait te dire si tu es le 2e dimanche du mois, non ?


---------------
Burn the museum, wipe your ass with the Mona Lisa, this way, at least, God will know your name.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Problème de codage d'une crontab

 

Sujets relatifs
Debian 9 problème fichier source & dépotsPb install après update noyau : pas de dossier build dans /lib/modules
Problème avec les droits ACL et les groupesProblème d'upload sur serveur web debian
Problème installation IpcopProbléme Base de donnée sur un Debian 8.7 x64
Problème de connexion sur un NAS avec OpenMediaVaultProblème pour un client nomade de openvpn d'acceder aux postes du LAN
[Resolus] Problème driver wireless DebianProblème d'envoi de mail depuis Thunderbird vers hotmail.com
Plus de sujets relatifs à : Problème de codage d'une crontab


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR