Comment programmer une t=C3=A2che toutes les 75=C2=A0h =C3=A0 la minute 12=
=C2=A0? L=E2=80=99objectif
=C3=A9tant d=E2=80=99ex=C3=A9cuter la t=C3=A2che tous les trois jours avec =
un d=C3=A9calage de 3=C2=A0h
entre 9h et 18h, du lundi au vendredi.
Ma ligne=C2=A0:
12 9-18/75 * * 1-5 commande
Cependant la t=C3=A2che s=E2=80=99est bien ex=C3=A9cut=C3=A9e hier =C3=A0 9=
h12 mais s=E2=80=99est r=C3=A9ex=C3=A9cut=C3=A9e
ce matin m=C3=AAme heure.
--Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Bonjour, Ceci me semble normal à la lecture du « man » : […] Step values can be used in conjunction with ranges. Following a range with ``/<number>'' specifies skips of the number's value through the range. […] Si mon anglais n’est pas trop rouillé, « through the range » signifie « dans la plage [de valeurs] ». Or dans ton cas tu lui indique qu’il doit effectuer la tâche dans le créneau 9h 18h toute les 78 h … dans le créneau ! C’est un peu étroit non ? ;-) En plus il me semble que le système comprenant les astérisques et le notion de date (@daily, @monthly, …) il ne peut qu’y avoir un calcul dans la limite de temps choisi. C’est-à-dire 60 mn dans l’heure, 24h dans la journée, {28,29,30,31} jours dans le mois, … Toujours dans le « man », on peut lire dans les exemples : # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # m h dom mon dow usercommand Ceci me semble clair, non ? Du coup je ne vois pas bien comment effectuer le décalage de 3 heures cherché avec le cron. Désolé
Le 12 mai 2020 à 10:25, Raphaël POITEVIN a écrit : Bonjour, Comment programmer une tâche toutes les 75 h à la minute 12 ? L’objectif étant d’exécuter la tâche tous les trois jours avec un décalage de 3 h entre 9h et 18h, du lundi au vendredi. Ma ligne : 12 9-18/75 * * 1-5 commande Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée ce matin même heure. En vous remerciant. Cordialement, -- Raphaël www.leclavierquibave.fr
-- Pierre Malard «Quand un Français dit du mal de lui, ne le croyez pas, Il se vante !» Édouard Pailleron | _,,,---,,_ /,`.-'`' -. ;-;;,_ |,4- ) )-,_. , ( `'-' '---''(_/--' `-'_) πr perl -e '$_=q#: 3| 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. , ( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'_): 24πr::#;y#:#n#;s#(D)(d+)#$1x$2#ge;print' - --> Ce message n’engage que son auteur <-- --Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 Comment: GPGTools - http://gpgtools.org iQIzBAEBCgAdFiEE0KHTJ+AWKhmI+acm/pSWHuad/BgFAl66ZQYACgkQ/pSWHuad /BjS/A//fHw+c6bqJ9fy2EOoohNU5pNnZFlvW44vF/te1pvIHTT3iJ9uFyxIZBI/ bZ+CraTVgDvK3ZxkOq/ze21LOLb4SmgumaJATYIHVB2if1hDVvIeFXxdXdB64SOK sj2eSLizTZ6zzNcnXiQkAo9LyyiqtWB3V7qsQnP3E92S9GroY9+SLHdf4yK5do9c sKZarbiWo6rpO1o2eiXBfrG0/a7RDGVGIcanf40qoiOjv5YGMm397aKaHyCFoYbZ UmMo4MZ0mCjsp3N5qKWAG07yA2N/Iv/+Tbee0Jr62U/NyKtWyvI4YgZIu41f2Kdf tMABaBEPbua2HN6bpt2C6Z1+IKGfETvIcsWLRJjwlzpyVvolRZ7fgR9QLwyjuoD1 DiWAxueP8EsLTf63QaeMsSKfsTOP5XMS1MAlo2IhziPgB/l2TI2TAO5vyH7wlh9k b1NCBOXf5CEYFYOR3qC5lht4/T+y8wM4Rg1FkmvmcPaPUQxjLVBiY9U5rTOFu8zH dPxlSIEmvSKFIlJwPfHMbE6vFJ53M7rmhdMdqee3p7y0CLO0UXYyopWykwldhp1w MjTWqPJmHm6KaMmr2SztqgZVL4VmibmXh8qoaMtGmxH3o017UDX1uykQZeMNvT4b 5kNxMLoNqEQ2Nm2M6E71g7Yd548YIDqVQ/Apu1xNxDODlXCB6r4 =UD6k -----END PGP SIGNATURE----- --Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51--
Ceci me semble normal à la lecture du « man » :
[…] Step values can be used in conjunction with ranges. Following a range
with ``/<number>'' specifies skips of the number's value
through the range. […]
Si mon anglais n’est pas trop rouillé, « through the range » signifie « dans
la plage [de valeurs] ». Or dans ton cas tu lui indique qu’il doit effectuer
la tâche dans le créneau 9h 18h toute les 78 h … dans le créneau ! C’est un
peu étroit non ? ;-)
En plus il me semble que le système comprenant les astérisques et le notion
de date (@daily, @monthly, …) il ne peut qu’y avoir un calcul dans la limite
de temps choisi. C’est-à-dire 60 mn dans l’heure, 24h dans la journée,
{28,29,30,31} jours dans le mois, …
Toujours dans le « man », on peut lire dans les exemples :
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# m h dom mon dow usercommand
Ceci me semble clair, non ?
Du coup je ne vois pas bien comment effectuer le décalage de 3 heures cherché
avec le cron.
Désolé
Le 12 mai 2020 à 10:25, Raphaël POITEVIN <raphael.poitevin@gmail.com> a écrit :
Bonjour,
Comment programmer une tâche toutes les 75 h à la minute 12 ? L’objectif
étant d’exécuter la tâche tous les trois jours avec un décalage de 3 h
entre 9h et 18h, du lundi au vendredi.
Ma ligne :
12 9-18/75 * * 1-5 commande
Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée
ce matin même heure.
En vous remerciant.
Cordialement,
--
Raphaël
www.leclavierquibave.fr
--
Pierre Malard
«Quand un Français dit du mal de lui, ne le croyez pas, Il se vante !»
Édouard Pailleron
| _,,,---,,_
/,`.-'`' -. ;-;;,_
|,4- ) )-,_. , ( `'-'
'---''(_/--' `-'_) πr
perl -e '$_=q#: 3| 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. , ( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'_): 24πr::#;y#:#n#;s#(D)(d+)#$1x$2#ge;print'
- --> Ce message n’engage que son auteur <--
--Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename=signature.asc
Content-Type: application/pgp-signature;
name=signature.asc
Content-Description: Message signed with OpenPGP
--Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Bonjour, Ceci me semble normal à la lecture du « man » : […] Step values can be used in conjunction with ranges. Following a range with ``/<number>'' specifies skips of the number's value through the range. […] Si mon anglais n’est pas trop rouillé, « through the range » signifie « dans la plage [de valeurs] ». Or dans ton cas tu lui indique qu’il doit effectuer la tâche dans le créneau 9h 18h toute les 78 h … dans le créneau ! C’est un peu étroit non ? ;-) En plus il me semble que le système comprenant les astérisques et le notion de date (@daily, @monthly, …) il ne peut qu’y avoir un calcul dans la limite de temps choisi. C’est-à-dire 60 mn dans l’heure, 24h dans la journée, {28,29,30,31} jours dans le mois, … Toujours dans le « man », on peut lire dans les exemples : # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # m h dom mon dow usercommand Ceci me semble clair, non ? Du coup je ne vois pas bien comment effectuer le décalage de 3 heures cherché avec le cron. Désolé
Le 12 mai 2020 à 10:25, Raphaël POITEVIN a écrit : Bonjour, Comment programmer une tâche toutes les 75 h à la minute 12 ? L’objectif étant d’exécuter la tâche tous les trois jours avec un décalage de 3 h entre 9h et 18h, du lundi au vendredi. Ma ligne : 12 9-18/75 * * 1-5 commande Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée ce matin même heure. En vous remerciant. Cordialement, -- Raphaël www.leclavierquibave.fr
-- Pierre Malard «Quand un Français dit du mal de lui, ne le croyez pas, Il se vante !» Édouard Pailleron | _,,,---,,_ /,`.-'`' -. ;-;;,_ |,4- ) )-,_. , ( `'-' '---''(_/--' `-'_) πr perl -e '$_=q#: 3| 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. , ( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'_): 24πr::#;y#:#n#;s#(D)(d+)#$1x$2#ge;print' - --> Ce message n’engage que son auteur <-- --Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 Comment: GPGTools - http://gpgtools.org iQIzBAEBCgAdFiEE0KHTJ+AWKhmI+acm/pSWHuad/BgFAl66ZQYACgkQ/pSWHuad /BjS/A//fHw+c6bqJ9fy2EOoohNU5pNnZFlvW44vF/te1pvIHTT3iJ9uFyxIZBI/ bZ+CraTVgDvK3ZxkOq/ze21LOLb4SmgumaJATYIHVB2if1hDVvIeFXxdXdB64SOK sj2eSLizTZ6zzNcnXiQkAo9LyyiqtWB3V7qsQnP3E92S9GroY9+SLHdf4yK5do9c sKZarbiWo6rpO1o2eiXBfrG0/a7RDGVGIcanf40qoiOjv5YGMm397aKaHyCFoYbZ UmMo4MZ0mCjsp3N5qKWAG07yA2N/Iv/+Tbee0Jr62U/NyKtWyvI4YgZIu41f2Kdf tMABaBEPbua2HN6bpt2C6Z1+IKGfETvIcsWLRJjwlzpyVvolRZ7fgR9QLwyjuoD1 DiWAxueP8EsLTf63QaeMsSKfsTOP5XMS1MAlo2IhziPgB/l2TI2TAO5vyH7wlh9k b1NCBOXf5CEYFYOR3qC5lht4/T+y8wM4Rg1FkmvmcPaPUQxjLVBiY9U5rTOFu8zH dPxlSIEmvSKFIlJwPfHMbE6vFJ53M7rmhdMdqee3p7y0CLO0UXYyopWykwldhp1w MjTWqPJmHm6KaMmr2SztqgZVL4VmibmXh8qoaMtGmxH3o017UDX1uykQZeMNvT4b 5kNxMLoNqEQ2Nm2M6E71g7Yd548YIDqVQ/Apu1xNxDODlXCB6r4 =UD6k -----END PGP SIGNATURE----- --Apple-Mail=_84FAFFC9-193B-48D8-8D12-99DA22FA1B51--
l0f4r0
Bonjour, Je pense que tu devrais t'inspirer de la discussion instructive suivante : https://stackoverflow.com/questions/27412483/how-do-cron-steps-work Bien cordialement, l0f4r0
Bonjour,
Je pense que tu devrais t'inspirer de la discussion instructive suivante : https://stackoverflow.com/questions/27412483/how-do-cron-steps-work
Bonjour, Je pense que tu devrais t'inspirer de la discussion instructive suivante : https://stackoverflow.com/questions/27412483/how-do-cron-steps-work Bien cordialement, l0f4r0
G2PC
J’essaierai avec un sleep ou quelque chose comme ça.
Quel intérêt de faire une tâche tous les 3 jours avec 3h de décalage sur une plage horaire aussi large ? Peut être faire un script qui s’exécute tous les jours à ce moment la, voir même, toutes les heures. Le script devra écrire un token quelque part, à vérifier. Si le token existe, y mettre la date et l'heure voulue pour exécuter le script. Une fois le script exécuté, supprimer le token. Lors de la nouvelle tâche cron, si le token n'existe pas, recréer le token pour dans 3 jours, avec une création aléatoire en ce qui concerne l'heure, qui sera saisie dans le token. Un truc dans le genre, non ?
J’essaierai avec un sleep ou quelque chose comme ça.
Quel intérêt de faire une tâche tous les 3 jours avec 3h de décalage sur
une plage horaire aussi large ?
Peut être faire un script qui s’exécute tous les jours à ce moment la,
voir même, toutes les heures.
Le script devra écrire un token quelque part, à vérifier. Si le token
existe, y mettre la date et l'heure voulue pour exécuter le script.
Une fois le script exécuté, supprimer le token.
Lors de la nouvelle tâche cron, si le token n'existe pas, recréer le
token pour dans 3 jours, avec une création aléatoire en ce qui concerne
l'heure, qui sera saisie dans le token.
J’essaierai avec un sleep ou quelque chose comme ça.
Quel intérêt de faire une tâche tous les 3 jours avec 3h de décalage sur une plage horaire aussi large ? Peut être faire un script qui s’exécute tous les jours à ce moment la, voir même, toutes les heures. Le script devra écrire un token quelque part, à vérifier. Si le token existe, y mettre la date et l'heure voulue pour exécuter le script. Une fois le script exécuté, supprimer le token. Lors de la nouvelle tâche cron, si le token n'existe pas, recréer le token pour dans 3 jours, avec une création aléatoire en ce qui concerne l'heure, qui sera saisie dans le token. Un truc dans le genre, non ?
Je n’avais pas lu leman car le système n’a pas hurl é quand j’ai essayé
de lui metre des valeurs hors des bornes.
>
> Du coup je ne vois pas bien comment effectuer le décalage de 3 heu res cherché
> avec le cron.
J’essaierai avec un sleep ou quelque chose comme ça.
Sinon, voir si systemd.timer peut offrir une solution.
Si ton système utilise systemd.
Sinon, voir si systemd.timer peut offrir une solution. Si ton système utilise systemd.
À voir en effet. Espérant qu’on peut exécuter ceci e n utilisateur non privilégié. -- Raphaël www.leclavierquibave.fr
raphael.poitevin
G2PC writes:
Quel intérêt de faire une tâche tous les 3 jours avec 3h d e décalage sur une plage horaire aussi large ?
Si j’ai mis des heures de bornage, c’est pour respecter des heures de bureau. Mon but est d’envoyer des mails de rappel à mon agence de location afin qu’elle n’oublie pas de traiter mon dossier, mais à des heures différentes.
Peut être faire un script qui s’exécute tous les jours à ce moment la, voir même, toutes les heures. Le script devra écrire un token quelque part, à vérifier. Si le token existe, y mettre la date et l'heure voulue pour exécuter le script. Une fois le script exécuté, supprimer le token. Lors de la nouvelle tâche cron, si le token n'existe pas, recré er le token pour dans 3 jours, avec une création aléatoire en ce qui concerne l'heure, qui sera saisie dans le token. Un truc dans le genre, non ?
J’y rélféchirai. Mais bon, un peu trop de boulot pour que lque chose d’aussi mineur. Je me contenterai de mettre */3 pour le jour et env errai toujours à la même heure. -- Raphaël www.leclavierquibave.fr
G2PC <g2pc@visionduweb.com> writes:
Quel intérêt de faire une tâche tous les 3 jours avec 3h d e décalage sur
une plage horaire aussi large ?
Si j’ai mis des heures de bornage, c’est pour respecter des heures de
bureau. Mon but est d’envoyer des mails de rappel à mon agence de
location afin qu’elle n’oublie pas de traiter mon dossier, mais à des
heures différentes.
Peut être faire un script qui s’exécute tous les jours à ce moment la,
voir même, toutes les heures.
Le script devra écrire un token quelque part, à vérifier. Si le token
existe, y mettre la date et l'heure voulue pour exécuter le script.
Une fois le script exécuté, supprimer le token.
Lors de la nouvelle tâche cron, si le token n'existe pas, recré er le
token pour dans 3 jours, avec une création aléatoire en ce qui concerne
l'heure, qui sera saisie dans le token.
Un truc dans le genre, non ?
J’y rélféchirai. Mais bon, un peu trop de boulot pour que lque chose
d’aussi mineur. Je me contenterai de mettre */3 pour le jour et env errai
toujours à la même heure.
--
Raphaël
www.leclavierquibave.fr
Quel intérêt de faire une tâche tous les 3 jours avec 3h d e décalage sur une plage horaire aussi large ?
Si j’ai mis des heures de bornage, c’est pour respecter des heures de bureau. Mon but est d’envoyer des mails de rappel à mon agence de location afin qu’elle n’oublie pas de traiter mon dossier, mais à des heures différentes.
Peut être faire un script qui s’exécute tous les jours à ce moment la, voir même, toutes les heures. Le script devra écrire un token quelque part, à vérifier. Si le token existe, y mettre la date et l'heure voulue pour exécuter le script. Une fois le script exécuté, supprimer le token. Lors de la nouvelle tâche cron, si le token n'existe pas, recré er le token pour dans 3 jours, avec une création aléatoire en ce qui concerne l'heure, qui sera saisie dans le token. Un truc dans le genre, non ?
J’y rélféchirai. Mais bon, un peu trop de boulot pour que lque chose d’aussi mineur. Je me contenterai de mettre */3 pour le jour et env errai toujours à la même heure. -- Raphaël www.leclavierquibave.fr
raphael.poitevin
writes:
Je pense que tu devrais t'inspirer de la discussion instructive suivante : https://stackoverflow.com/questions/27412483/how-do-cron-steps-work
Merci, la piste avec at est intéressante. -- Raphaël www.leclavierquibave.fr
l0f4r0@tuta.io writes:
Je pense que tu devrais t'inspirer de la discussion instructive
suivante
: https://stackoverflow.com/questions/27412483/how-do-cron-steps-work
Merci, la piste avec at est intéressante.
--
Raphaël
www.leclavierquibave.fr
Je pense que tu devrais t'inspirer de la discussion instructive suivante : https://stackoverflow.com/questions/27412483/how-do-cron-steps-work
Merci, la piste avec at est intéressante. -- Raphaël www.leclavierquibave.fr
raphael.poitevin
Finalement : sleep $(($RANDOM%540)) && commande Tous les 3 jours, on verra. Raphaël (Raphaël POITEVIN) writes:
Bonjour, Comment programmer une tâche toutes les 75 h à la minute 1 2 ? L’objectif étant d’exécuter la tâche tous les trois jours ave c un décalage de 3 h entre 9h et 18h, du lundi au vendredi. Ma ligne : 12 9-18/75 * * 1-5 commande Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée ce matin même heure. En vous remerciant. Cordialement,
Comment programmer une tâche toutes les 75 h à la minute 1 2 ? L’objectif
étant d’exécuter la tâche tous les trois jours ave c un décalage de 3 h
entre 9h et 18h, du lundi au vendredi.
Ma ligne :
12 9-18/75 * * 1-5 commande
Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée
ce matin même heure.
Finalement : sleep $(($RANDOM%540)) && commande Tous les 3 jours, on verra. Raphaël (Raphaël POITEVIN) writes:
Bonjour, Comment programmer une tâche toutes les 75 h à la minute 1 2 ? L’objectif étant d’exécuter la tâche tous les trois jours ave c un décalage de 3 h entre 9h et 18h, du lundi au vendredi. Ma ligne : 12 9-18/75 * * 1-5 commande Cependant la tâche s’est bien exécutée hier à 9h12 mais s’est réexécutée ce matin même heure. En vous remerciant. Cordialement,
Yves Rutschle
Je me contenterai de mettre */3 pour le jour et enverrai toujours à la même heure.
Personellement, je ferais un mix entre ta solution et celle de G2PC: */3 pour lancer tous les 3 jours, puis le script commence avec un sleep rand(3*3600) (en pseudo-Perl) Comme ça tu envoie à une heure aléatoire sur une plage de 3 heures. Y.
Je me contenterai de mettre */3 pour le jour et enverrai
toujours à la même heure.
Personellement, je ferais un mix entre ta solution et celle
de G2PC: */3 pour lancer tous les 3 jours, puis le script
commence avec un
sleep rand(3*3600)
(en pseudo-Perl)
Comme ça tu envoie à une heure aléatoire sur une plage de
3 heures.
Je me contenterai de mettre */3 pour le jour et enverrai toujours à la même heure.
Personellement, je ferais un mix entre ta solution et celle de G2PC: */3 pour lancer tous les 3 jours, puis le script commence avec un sleep rand(3*3600) (en pseudo-Perl) Comme ça tu envoie à une heure aléatoire sur une plage de 3 heures. Y.
Yves Rutschle
On Tue, May 12, 2020 at 06:04:00PM +0200, Raphaël POITEVIN wrote:
sleep $(($RANDOM%540)) && commande
Bah, j'avais raté qu'il me restait un mail à lire dans le fil. Désolé de la contribution redondante dans mon autre mail -_- Y.
On Tue, May 12, 2020 at 06:04:00PM +0200, Raphaël POITEVIN wrote:
sleep $(($RANDOM%540)) && commande
Bah, j'avais raté qu'il me restait un mail à lire dans le
fil. Désolé de la contribution redondante dans mon autre mail -_-