[gull] Truc et astuces: At sans atd (bash)
Félix Hauri
felix at f-hauri.ch
Sat May 7 00:52:50 CEST 2011
Bonjour,
Voici un petit truc qui permet d'attendre un moment précis, p. ex avant
d'effectuer une tâche particulière, mais sans utiliser le daemon ``atd''.
(Avantage/inconvénient, la commande s'effectue dans la console courante,
elle est donc tributaire de son existance, on peut s'affranchir de cette
fragilité en utilisant cette astuce dans un script, lancé avec nohup et/
ou des redirections, ou en utilisant une console screen, mais ce n'est
pas le sujet.)
Bref, l'idée est d'utiliser sleep pour attendre la bonne ``période'':
$ sleep $(($(printf "%s-%s" $(echo $'may 12 12:34:56\nnow'|date -f - +%s))))
Pour mieux voir:
$ echo $(($(printf "%s-%s" $(echo $'may 12 12:34:56\nnow'|date -f - +%s))))
475302
Et alors donc:
$ date -d "now +$(($(printf "%s-%s" $(echo may 12 12:34:56$'\nnow'|date -f - +%s)))) secs"
jeudi 12 mai 2011, 12:34:56 (UTC+0200)
...amusant, non?
Question quizz: lorsque je tapes ``ps ax'', je vois des ``sleep'', comment
faire pour savoir à qui il appartient, quel pty il est rataché et pour quel
moment il est programmé ?
pour les mecs balèzes (geeks et autres hackers): dites-moi plutôt ce que la
session devrait faire après si, p.ex: la commande à été lancée dans une console
screen, suivie de :
...2:34:56\nnow'|date -f - +%s)))) ; somestupidshints /
?
--
Félix Hauri - <felix at f-hauri.ch> - http://www.f-hauri.ch
More information about the gull
mailing list