Script Shell

Bonjour,

Lorsque je lance cette ligne :

$ /usr/lib/nagios/plugins/check_callrec_process -S SLR -P /opt/callrec/run/slr_1.pid --> j'obtient le résultat suivant :

Service SLR is running (pid: 2645)

Merci de m'aider d'écrire un script shell qui lance cette ligne et lire le résultat si la chaine de caractére " Service SLR is running " existe il affiche 1 sinon il affiche 0.

Merci...

3 réponses

  1. Modérateur
    qqchquicommenceparQ a raison, c'est le plus propre (il suffit de faire le test sur $? qui vaut 0 si tout s'est bien passé).

    /usr/lib/nagios/plugins/check_callrec_process -S SLR -P /opt/callrec/run/slr_1.pid
    ret=$?
    
    if [ $ret == 0 ]
    then
      echo "ok"
    else
      echo "not ok"
    fi
    1. la commande a probablement un code retour différent selon que le service est actif ou non, et donc simplement l'afficher, en prenant soin de rediriger la sortie de la commande vers /dev/null (à moins qu'une option permette de la rendre silencieuse).
      1. Modérateur
        Normalement si tu sais écrire un test (par exemple via if ... else ... en shell) et que tu sais utiliser grep (par exemple avec l'option -q) ça devrait être une formalité ?

        Bonne chance