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 05/05/2007, à 21:21

krislec

[Résolu]scrit shell processus

Pourquoi ce script ne fonctionne pas ?

#!/bin/bash
if [ -e "$(ps aux | grep /usr/bin/matchbox-keyboard)"]; then
        killall matchbox-keyboard
else
        /usr/bin/matchbox-keyboard
fi

comment faire pour vérifier que le processus matchbox-keyboard est en fonction.

Ainsi, je veux que l'activation du script tue le processus, s'il est déjà en fonction, où l'active s'il ne l'est pas....

merci d'avance.

K.

Dernière modification par krislec (Le 06/05/2007, à 11:39)


PC bureau Quad Core 2.4Ghz ....Natty 11.10, mais UBUNTU classique !!!

Hors ligne

#2 Le 05/05/2007, à 21:46

abetsic

Re : [Résolu]scrit shell processus

Que cherches tu à faire exactement ?

Déjà il manque un espace entre " et ] à la deuxième ligne.

ensuite l'option -e prend un argument un fichier et teste son existence, donc ce que tu as écris n'a pas vraiment de sens.

Si tu cherches à savoir si le programme matchbox-keyboard existe, il faut que tu saches que ta commande renverra toujours quelque chose, que le processus existe ou pas, puisque quand tu lance cette commande, le processus grep va contenir la chaine que tu cherches, et il va se trouver lui même...

il faut que tu exclues cette occurence en rajoutant un "| grep -v grep".

l'option -v permet de ne pas afficher les lignes qui correspondent au pattern.

Quelque chose comme ça devrait marcher :

#!/bin/bash
if [ "$(ps aux | grep /usr/bin/matchbox-keyboard | grep -v grep -c)" -ge 1 ]; then
        killall matchbox-keyboard
else
        /usr/bin/matchbox-keyboard
fi

l'option -c au deuxième grep, compte les occurences qui concordent ce que tu cherches, et si il y en a au moins une, c'est que ton process est lancé.

Hors ligne

#3 Le 05/05/2007, à 22:26

krislec

Re : [Résolu]scrit shell processus

Excellent !
Grâce à toi abetsic .....ça fonctionne !!!!!

Je pense que je n'aurais pas trouvé sans toi !
Un grand MERCI.

C'était un petit script pour rendre visible ou invisible un clavier virtuel pour mon tablet pc !!!

K.

Dernière modification par krislec (Le 05/05/2007, à 22:27)


PC bureau Quad Core 2.4Ghz ....Natty 11.10, mais UBUNTU classique !!!

Hors ligne

#4 Le 07/05/2007, à 11:23

krislec

Re : [Résolu]scrit shell processus

Maintenant, dès lors que matchbox-keyboard est en fonction, les fenêtres (web, editors, console ....) qui s'ouvrent s'affichent sur la partie 1/3 inf de l'écran masquant le clavier virtuel (comme si la limite sup de l'écran était erroné est définit par la partie sup du clavier virtuel). Une manipulation (réduire-agrandir) permet un affichage sur la partie haute de l'écran:

Pourquoi, et surtout comment le résoudre ....?

K.


PC bureau Quad Core 2.4Ghz ....Natty 11.10, mais UBUNTU classique !!!

Hors ligne