Scipt !!!!!!!

celine -  
fablac Messages postés 96 Statut Membre -
Bonjour,

Lorsque j'arrête un process lié à une application puis le relance je garde en memoire d'ancienne requete ...

J'aimerais créer un script me permettant de tuer tous les process lié à cette application & qui se relance seulement lorsque tous les process ont ete tué.

Merci si vous pouvez m'aider.
Je suis perdue dans toutes les commandes unix !!

5 réponses

  1. fablac Messages postés 96 Statut Membre 23
     
    Salut,

    créé un shell avec
    ############"
    #!/bin/sh
    PID=`ps -ax | grep ton_prog | grep -v grep |head -n1 | awk '{print $1}'`
    if [ "$PID" != "" ]; then
    kill -9 $PID
    fi
    #######
    0
  2. celine
     
    Je te remercie pour ta réponse
    Je vais essayée ...

    Moi j'étais partie comme ça:

    for PID in `ps -ef |grep nagios |awk '{$2}'`;do
    kill -9 $PID;
    done

    Le prb est qu'il ne me tue pas tous les process ;-))

    Qu'est ce que tu en penses ??
    0
  3. fablac Messages postés 96 Statut Membre 23
     
    je vais essayé ton prog avec autre chose

    moi ce prog je m'en sert pour arreter des process interbase et tomcat et ça marche très bien

    Bon courage
    0
  4. celine
     
    Superb ca marche ton script marche tres bien !!

    Peux-tu me dire ce qu'il me manquait en utilisant la syntaxe for, do, done ...

    Merci pour ta patience.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. fablac Messages postés 96 Statut Membre 23
     
    ta boucle etait bonne
    c'était "`ps -ef |grep nagios |awk '{$2}'`" qui ne renvoyait pas le numero
    j'ai utilisé mon prog avec while et ça tourne tout aussi bien pour des applis telles que apache

    while [ `ps -ax | grep httpd | grep -v grep |head -n1 | awk '{print $1}'` != "" ]; do PID=`ps -ax | grep httpd | grep -v grep |head -n1 | awk '{print $1}'`; kill -9 $PID; done 2>/dev/null

    Bon courage
    0