IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Solaris Discussion :

Récuperer le retours de ps


Sujet :

Solaris

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 42
    Par défaut Récuperer le retours de ps
    Bonjour,

    Je suis sous solaris, en ksh (mais j'ai le même problème en bash)
    Je ne comprend pas pourquoi je n'arrive pas a récupérer le retours de grep:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #!/bin/ksh
    SERVICE='bash'
    TEST=`ps | grep -v grep | grep $SERVICE > /dev/null`
    echo TEST=$TEST
    if ps | grep -v grep | grep $SERVICE > /dev/null
    then
        echo "$SERVICE service running, everything is fine"
    else
        echo "$SERVICE is not running"
    fi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    # ./test.ksh
    TEST=
    bash service running, everything is fine
    Quelqu'un peut éclairer ma lanterne ?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 375
    Par défaut
    Bonjour,

    Il faut ajouter l'option -ef dans la commande ps

    A+

  3. #3
    Invité
    Invité(e)
    Par défaut
    mmmhh

    Si tu envoies tout vers /dev/null, il est évident que tu ne pourras jamais récupérer l'output de ta commande!

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 375
    Par défaut
    Après avoir fait le test en ajoutant le -ef il n'y a pas de problème le test ce fait bien aucun soucis de ce coté là.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 42
    Par défaut Résolu: Récuperer le retours de ps
    Merci,
    Par contre je m'attendais à avoir 0 ou 1 en retours.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    # cat test.ksh;./test.ksh
    #!/bin/ksh
    SERVICE='bash'
    TEST=`ps -ef | grep -v grep | grep $SERVICE > /dev/null`
    TEST2=`ps -ef | grep -v grep | grep $SERVICE`
    echo TEST=$TEST
    echo TEST2=$TEST2
    #if ps | grep -v grep | grep $SERVICE > /dev/null
    if [ "$TEST2" != "" ]
    then
        echo "$SERVICE service running, everything is fine"
    else
        echo "$SERVICE is not running"
    fi
    TEST=
    TEST2= webadm 5649 5627 0 May 31 pts/33 0:00 bash webadm 1005 999 0 Jun 08 pts/18 0:01 bash webadm 12683 7954 0 Jun 08 pts/2 0:00 bash webadm 22510 22439 0 Jun 01 pts/17 0:00 bash webadm 4745 4739 0 Jun 07 pts/3 0:00 bash webadm 7925 7914 0 11:17:58 pts/7 0:00 bash webadm 16189 16179 0 Jun 07 pts/28 0:00 bash webadm 7954 7937 0 Jun 07 pts/2 0:00 bash webadm 3083 3076 0 10:30:19 pts/24 0:00 bash webadm 29943 29937 0 Jun 07 pts/23 0:00 bash webadm 15919 15912 0 Jun 06 pts/10 0:00 bash webadm 594 25831 0 Jun 07 pts/27 0:00 bash
    bash service running, everything is fine

  6. #6
    Invité
    Invité(e)
    Par défaut
    Si tu souhaites récupérer le code retour de la commande, Dans ce cas, tu dois utiliser $? pour récupérer cette valeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    wil@vm-ubuntu8:~$ ps | grep -v grep | grep bash
     3469 pts/1    00:00:00 bash
    wil@vm-ubuntu8:~$ echo $?
    0
    wil@vm-ubuntu8:~$ ps | grep -v grep | grep toto
    wil@vm-ubuntu8:~$ echo $?
    1

  7. #7
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Par défaut
    Il y a plus simple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #!/bin/ksh
    SERVICE=bash
    if pgrep $SERVICE >/dev/null
    then
    	echo $SERVICE is running
    else
    	echo $SERVICE is not running
    fi
    voire même en plus compact:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/ksh
    SERVICE=bash
    printf "%s is %srunning\n" $SERVICE "$(pgrep $SERVICE >/dev/null || echo "not ")"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 10/09/2009, 15h00
  2. Réponses: 2
    Dernier message: 05/05/2008, 17h25
  3. [C#] Je n'arrives pas a récuperer la valeur de retour de ma requete
    Par Cazaux-Moutou-Philippe dans le forum Windows Forms
    Réponses: 8
    Dernier message: 23/06/2006, 14h25
  4. Comment récuperer la valeur de retour d'un .vbs
    Par FabFabFab dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 05/04/2006, 14h45
  5. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo