Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

Attention, une faille de sécurité dans bash a récemment été rapportée, il est recommandé de mettre à jour son système (plus de détails) *** mise à jour 12/10/2014 ***

#1 Le 09/09/2009, à 06:55

Charlie42

Gestion des processus

Bonjour à tous,

Je souhaite créer un bash me permettant de lancer une commande python, puis lancer firefox, détecter ensuite la fermeture de toutes les fenêtres de firefox et ensuite de "terminer" la commande python.
Dans le cas présent il s'agit en fait:
    - lancer d'un projet Django la commande

python manage.py runserver

d'un projet Django
    - lancer firefox directement sur la page du serveur de dévelopement
    - arrêter le serveur de développement au moment ou toutes les fenêtres firefox sont fermées.

Grâce à l'IRC de django, j'ai pu trouver facilement le moyen de lancer

python manage.py runserver

L'ouverture de firefox ne pose aucun problème.
Tuer le processus qui a lancer la commande python ne pose aucun problème grâce à ce site (détection du n° de processus grâce à la commande

ps -u

et à

kill -15 [i]n°_du_processus[/i]

.

Mon problème est pour lier les dernières étapes.

Comment détecter la fermeture de toutes les fenêtres firefox d'une part. Et d'autre part comment obtenir automatiquement le n° de processus qui m'intéresse?

D'avance merci de votre aide.

Charlie

Hors ligne

#2 Le 09/09/2009, à 07:02

xelator

Re : Gestion des processus

Il suffit de détecter je pense que le processus soit coupé :

la commande : ps aux | grep icewease | grep -v grep
est vide si firefox (iceweasel) est  coupé donc avec un truc genre :
test=`ps aux | grep icewease | grep -v grep`
if [ $test -z ] #syntaxe a vérifier : z = test variable vide
do ...

enfin un truc du genre avec un boucle infini et un sleep.

Après ça peut ne pas te convenir

Dernière modification par xelator (Le 09/09/2009, à 07:04)

Hors ligne

#3 Le 09/09/2009, à 07:12

xelator

Re : Gestion des processus

j'avais utilisé ça pour sortir le PID :

pid=$(ps aux | grep hibernation |cut -d"r" -f2 | xargs | cut -d" " -f1

mais bon ...

Hors ligne

#4 Le 09/09/2009, à 11:21

Charlie42

Re : Gestion des processus

Et bien écoute, mon niveau dans la prog shell est tellement faible que je suis bien incapable de te dire si cela me va ou non...:D

Je vais décortiquer ce que tu me donnes, en comprendre le fonctionnement et on verra bien, mais à priori dans le principe ça à l'air de correspondre à mes attentes...

Hors ligne

#5 Le 12/09/2009, à 21:03

Link31

Re : Gestion des processus

pidof firefox-bin

Hors ligne

#6 Le 13/09/2009, à 09:40

Charlie42

Re : Gestion des processus

Merci Link31. Ce petit bout de code va pas mal m'aider pour faire ce que je souhaite

Hors ligne

Haut de page ↑