#1 Le 13/11/2007, à 22:12
- nochka85
[Résolu]Script identique pour lancer et arrêter une application
Bonjour,
Voilà mon problème :
Je voudrais écrire un petit script pour créer un lanceur dans cairo-dock qui lancerait conky si ce dernier n'est pas encore lancé et , au contraire, l'arrêterait s'il est déjà lancé .... En fait, je veux faire une sorte de bouton-poussoir (ON/OFF), c'est tout !
Le problème est que je n'y connait rien en script. En fouillant un peu, j'arrive à ceci:
#!/bin/bash
if [ "`ps -ef |grep 'conky' |grep -v grep`" != "" ]; then
killall conky&
else
conky&
fi
Mais cela ne marche pas : cela ne me fait toujours le "killall conky" et je ne comprend pas pourquoi...
La seule chose qui marche, c'est :
#!/bin/bash
killall conky&
conky&
...et lorsque je bourrine comme un malade sur mon lanceur, de temps en temps il me coupe conky (mais rarement)! :lol::lol:
Bref, merci de votre aide...
Dernière modification par nochka85 (Le 14/11/2007, à 17:51)
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#2 Le 13/11/2007, à 22:50
- nounoux
Re : [Résolu]Script identique pour lancer et arrêter une application
Salut,
Regarde du cote de la commande "wait", commande qui repere le PID de l'application.
désolé, je ne retrouve pas le lien qui traite de la commande et je suis presser par le temps mais je pense que cette comande peut te rendre service.
Savoir ce que tout le monde sait, c'est ne rien savoir (R de Gourmont)
Ne pas oublier de marquer [Résolu] quand vous avez votre réponse.
Hors ligne
#3 Le 13/11/2007, à 23:00
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
Ce que je ne comprend pas, c'est que si je fais juste :
#!/bin/bash
if [ "`ps -ef |grep 'conky' |grep -v grep`" != "" ]
then
echo "Conky est lancé"
else
echo "Conky n'est pas lancé"
fi
Alors là cela marche très bien... Mais j'arrive pas à remplacer mes echo par mes commandes ?????
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#4 Le 13/11/2007, à 23:06
- grisouille
Re : [Résolu]Script identique pour lancer et arrêter une application
peut être ça :
#!/bin/bash
killall conky
if ! killall conky ;
then conky
fi
Hors ligne
#5 Le 13/11/2007, à 23:09
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
J'essaie de suite !
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#6 Le 13/11/2007, à 23:12
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
çà marche impecable !!! Merci :D
.... Mais je ne comprend vraiment pas pourquoi çà marche : C'est quoi la ligne if ! killall conky ; ? Cela veut dire quoi ?
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#7 Le 13/11/2007, à 23:17
- grisouille
Re : [Résolu]Script identique pour lancer et arrêter une application
le script commence par killer conky
si la commande n'est pas executer il lance conky
le if veut dire "si je n'est pas killer conky" (pour faire simple)
voili !
Hors ligne
#8 Le 13/11/2007, à 23:22
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
Ok ! En tout cas merci !
J'espère que pour mon deuxième script je m'en sortirais mieux !
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#9 Le 13/11/2007, à 23:34
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
Une petite question tout de même avant de passer en Résolu:
Quelqu'un pourrait me dire o๠j'avais faux à mon premier script ?
Rappel:
#!/bin/bash
if [ "`ps -ef |grep 'conky' |grep -v grep`" != "" ]; then
killall conky&
else
conky&
fi
...Ce que je voulais faire, c'était:
Si "ps -ef |grep 'conky' |grep -v grep" me donne quelque chose
Alors je tue Conky
Et sinon (bref, si "ps -ef |grep 'conky' |grep -v grep" ne me donne rien)
Alors je lance Conky
Ce n'est pas bon ???
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#10 Le 14/11/2007, à 12:53
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
up ?
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne
#11 Le 14/11/2007, à 13:36
- pipomolo
Re : [Résolu]Script identique pour lancer et arrêter une application
à€ tous les coups, tu as nommé ton script avec le mot conky dedans, du coup, quand tu le lances, il apparaà®t dans le résultat du ps, qui ne sera donc pas vide...il essaiera alors de killer un conky qui n'est en fait pas lancé.
Une astuce, pour débugger un script shell, consiste à mettre en début du script:
set -x
afin de voir ce qui se passe à l'exécution...
Hors ligne
#12 Le 14/11/2007, à 17:51
- nochka85
Re : [Résolu]Script identique pour lancer et arrêter une application
ok, merci du conseil !
Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop
Hors ligne