Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/04/2008, à 20:04

GrandGoupil

Script pour minuterie (bash, zenity)

Bonsoir,

Je viens de faire un script pour minuterie (pâtes, riz, gâteaux...) associé à un lanceur d'applications sur le tableau de bord :

Si vous avez des améliorations à y apporter ...

if (( $# != 1 )) ; then
	argument=$(zenity --entry --text="Temps de cuisson ?" --entry-text="10" --title="Minuterie")
	read
else
	argument=$1
fi
if [ ! $argument ] ; then exit
else
	(( temps=$argument * 60 ))
	sleep $temps
	playsound cuitcuit.mp3 &
	zou=$!
	arg=$(zenity --info --text="C'est cuit !!!!" --title="Driiiiing !!!")
	read
	`kill -9 $zou` &
fi

tongue

Hors ligne

#2 Le 13/04/2008, à 20:21

Itsu

Re : Script pour minuterie (bash, zenity)

pas mal ^^
a quand le service café ?

Hors ligne

#3 Le 13/04/2008, à 20:42

SwanSwan

Re : Script pour minuterie (bash, zenity)

smile ok, ca marche bien pour les pates de copine des geeks:cool:

#4 Le 13/04/2008, à 21:14

franco12

Re : Script pour minuterie (bash, zenity)

bon moi ça foire ça continue à dormir après les 1minute que je lui ai mis


"La route est (peut-être un peu) longue, mais la voie est (plus que jamais) libre" - Citation de Framasoft modifiée
Membre de l'April - « promouvoir et défendre le logiciel libre » - http://www.april.org
Mon jabber : francois_@jabber.fr

Hors ligne

#5 Le 13/04/2008, à 21:31

GrandGoupil

Re : Script pour minuterie (bash, zenity)

franco12 a écrit :

bon moi ça foire ça continue à dormir après les 1minute que je lui ai mis

Effectivement en ligne de commande il faut appuyer 2 fois sur Enter,
mais en l'exécutant à partir d'un lanceur c'est bon.

Hors ligne

#6 Le 14/04/2008, à 00:05

Ras'

Re : Script pour minuterie (bash, zenity)

A quoi servent les 2 "read" ?


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#7 Le 14/04/2008, à 12:57

MulX

Re : Script pour minuterie (bash, zenity)

Euh, c'est pas 'ktea' l'équivalent sous kde (en mieux big_smile) ?

Sinon les read servent a lire le clavier (enfin le canal 0 si rien n'est spécifié, comme le canal 0 correspond au clavier ... ) (saiMarkaiDenLeManDuBash roll )

Une autre question en passant, pourquoi multiplier le temps par 60 ?
sleep ${arguments}m ça fait pareil smile

Je ne comprend pas non plus l'intérêt de récupérer la sorti de ça :
arg=$(zenity --info --text="C'est cuit !!!!" --title="Driiiiing !!!")
Si le but c'est de l'oublier neutral (enfin ça fait rien donc c'est fondamentalement utile smile )

EDIT : Dernier truc, je ne comprend pas non plus l'intérêt des read ...

Dernière modification par MulX (Le 14/04/2008, à 13:01)


Tchous, MulX. -- PlayOnLinux :) -- Gopherspace !   -- 6 * 9 = 42 (si si) --  Humph? -- Follow me!

Hors ligne

#8 Le 14/04/2008, à 22:50

GrandGoupil

Re : Script pour minuterie (bash, zenity)

Ah oui les read ne servent à rien, je sais pas pourquoi j'ai mis ça, en même temps en faisant ce script j'essaye d'en apprendre plus, c'est donc normal qu'il y ait des boulettes. big_smile

Je connaissais pas sleep ${arguments}m . Merci du renseignement tongue
Et pour la sortie du dernier zenity c'est parce que je m'en servais avant pour faire un test avec zenity --question, mais maintenant il ne sert plus, on peut donc le virer.

Ce qui donne :

if (( $# != 1 )) ; then
	argument=$(zenity --entry --text="Temps de cuisson ?" --entry-text="10" --title="Minuterie")
else
	argument=$1
fi
if [ ! $argument ] ; then exit
else
	sleep ${argument}m
	playsound cuitcuit.mp3 &
	zou=$!
	zenity --info --text="C'est cuit !!!!\n\n à table !!!" --title="Driiiiing !!!"
	`kill -9 $zou` &
fi

Hors ligne

#9 Le 15/04/2008, à 12:12

Ras'

Re : Script pour minuterie (bash, zenity)

MulX a écrit :

Sinon les read servent a lire le clavier (enfin le canal 0 si rien n'est spécifié, comme le canal 0 correspond au clavier ... ) (saiMarkaiDenLeManDuBash roll )

Oui oui mais je parlais de leur interêt ^^
Enfin on est d'accord, le script est mieux comme ça smile

( précise les dépendances aussi pour les gens qui veulent s'en servir smile )

Dernière modification par Raskal (Le 15/04/2008, à 12:12)


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#10 Le 15/04/2008, à 16:53

traaf

Re : Script pour minuterie (bash, zenity)

pour les gnomistes smile
sudo apt-get install timer-applet


Vault106, musique libre, enjoy it /!\

Hors ligne

#11 Le 12/01/2011, à 22:03

GoInK

Re : Script pour minuterie (bash, zenity)

Je déterre un peu le post parce que j'ai aussi fait une minuterie de mon coté et je voulais la mettre sur le net sans créer de nouveaux sujets. Elle affiche le temps restant via zenity et lit une musique à la fin du temps via totem.
Voila le script:

#! /bin/bash
#Programme qui lance une musique après le temps demandé
T=$( zenity --entry --title="Cuisson" --text="    Temps en Minutes ou Secondes?    " --entry-text="m ou s")
if [ "$?" = 1 ] ; then
  zenity --error --title="Annulé" --text="Minuterie annulée."
  exit 1
fi
N=$( zenity --entry --title="Cuisson" --text="    Taper le temps en $T    " --entry-text="10")
if [ "$?" = 1 ] ; then
  zenity --error --title="Annulé" --text="Minuterie annulée."
  exit 1
fi
if [ "$T" = "m" ] ; then    #change les minutes en scondes
N=$(($N*60))
fi
s=$(($N%60))
m=$((($N-$s)/60))
i=1
(
while [ "$i" != 0 ]        #boucle se réalisant à m=-1 et s=0
do
    sleep 1            #Actualisé toute les secondes
    if [ "$s" = 0 ] ; then
      m=$(($m-1))
      s=59
        if [ "$m" = -1 ] ; then
            i=0
        fi
    fi
    echo "#$m minutes et $s secondes restantes"
    s=$(($s-1))
done
) |
zenity --progress \  --title="Cuisson" \   --auto-close
if [ "$?" = 1 ] ; then
  zenity --error --title="Annulé" --text="Minuterie annulée."
  exit 1
fi
#Ouvre votre musique via le logiciel totem (gnome)
totem --play [i]le_chemin_de_votre_musique[/i]
exit 0

Dernière modification par GoInK (Le 13/01/2011, à 23:01)


OS: Ubuntu Gnome-Shell 14.04

Hors ligne