#1 Le 21/11/2012, à 22:01
- jean bono
Aide pour script avec notify-send
Bonjour a tous
Je cherche un petit script qui m'afficherait une note ( avec les notifications ) apres un temps defini par moi-meme
un peu comme un compte a rebours avec des notifications
Je voudrais utiliser notify-send qui m'a l'air tres simple d'utilisation
et pour la temporisation je pensais faire un "sleep" mais je sais pas trop si ca marcherait
L'idee c'est de lancer le script et on rentre une phrase "x" et un temps "t"
une fois le temps "t" ecoule, notify-send s'active
l'ideal serait de pouvoir mettre le temps "t" en heure, minute et secondes
du coup on pourrait mettre en input "h", "m" et "s" et on ferait "t = 3600 x h + 60 x m + s"
Est ce que c'est realisable? Quelqu'un se sent de me donner un coup de main?
Merci
Jean Bono
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#2 Le 21/11/2012, à 22:57
- pingouinux
Re : Aide pour script avec notify-send
Bonjour,
Je ne connais pas notify-send, mais voici une suggestion :
$ cat script.sh
#!/bin/bash
x="$1"
t="$2"
T=$(date +"%s" -ud "1970-01-01 $t")
sleep $T
# Lancement de notify-send "$x"
Lancement du script, par exemple avec une temporisation de 1h 5mn 23s :
$ ./script.sh "la phrase" 1:5:23
Correction
Dernière modification par pingouinux (Le 21/11/2012, à 23:11)
Hors ligne
#3 Le 21/11/2012, à 23:05
- jean bono
Re : Aide pour script avec notify-send
hello pingouinux
ca marche pas vraiment
est ce que tu peux detailler avec moi le code?
x="$1" veut dire que le premier argument du script est enregistre dans la variable x?
idem pour t="$2" ? du coup on prend heure + minute + secondes dans la meme variable? il comprend la difference le script?
ensuite cette ligne je comprends pas... T=$(date +"%s" -ud "1970-01-01 $1")
je vois pas pourquoi on utilise pas la variable t non plus...
si tu peux m'eclairer
Merci
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#4 Le 21/11/2012, à 23:13
- jean bono
Re : Aide pour script avec notify-send
Merci nickel avec la correction^^
est ce que tu peux detailer la ligne qui definit T?
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#5 Le 21/11/2012, à 23:14
- pingouinux
Re : Aide pour script avec notify-send
T=$(date +"%s" -ud "1970-01-01 $t")
Tu as raison, c'est bien $t, et non $1. J'ai corrigé en #2.
Cette ligne convertit t, qui est dans le format hh:mm:ss, en secondes. Le 01/01/1970 est l'origine des temps pour Linux (appelé aussi Epoch).
Hors ligne
#6 Le 21/11/2012, à 23:22
- jean bono
Re : Aide pour script avec notify-send
ah ok, fallais le savoir ca^^
Merci beaucoup pour ton aide
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#7 Le 21/11/2012, à 23:31
- pingouinux
Re : Aide pour script avec notify-send
Si tu veux donner le temps en séparant heures, minutes et secondes, tu calcules T comme ceci :
T=$((60*(60*h+m)+s))
ou
T=$((3600*h+60*m+s))
Hors ligne
#8 Le 22/11/2012, à 01:36
- jean bono
Re : Aide pour script avec notify-send
Apres quelques bidouilles et recherches je l'ai transforme de la sorte :
#!/bin/bash
note=`zenity --entry --title="Note" --text="Note:"`
h=`zenity --entry --title="Heures" --text="Combien d'heures?:"`
m=`zenity --entry --title="Minutes" --text="Combien de minutes?:"`
s=`zenity --entry --title="Secondes" --text="Combien de secondes?:"`
T=$((60*(60*h+m)+s))
sleep $T
notify-send -i /home/bono178/images/travian.jpg $note
mplayer /usr/share/sounds/gnome/default/alerts/glass.ogg
sleep 5
comme ca j'ai une boite de dialogue pour rentrer les arguments, puis une jolie notif avec une icone et un son
C'est le timer parfait
Il me manque plus qu'a regler le probleme suivant :
si la "note" comporte un espace, ca marche plus
si quelqu'un est familier avec ce probleme n'hesitez pas
Merci pour l'impulsion de depart
Dernière modification par jean bono (Le 22/11/2012, à 01:40)
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#9 Le 22/11/2012, à 02:14
- metalux
Re : Aide pour script avec notify-send
Bonsoir jean bono,
Il faut protéger $note avec des doubles quotes.
notify-send -i /home/bono178/images/travian.jpg "$note"
Hors ligne
#10 Le 22/11/2012, à 02:15
- jean bono
Re : Aide pour script avec notify-send
of course^^
merci beaucoup metalux
je ne suis pas seulement un con...
Génération-linux
Une aide personnalisée avec les Parrains Linux
Hors ligne
#11 Le 22/11/2012, à 02:19
- metalux
Re : Aide pour script avec notify-send
Tout le mérite revient à pingouinux
Hors ligne