Script Shell

Fermé
ahmed_king29 Messages postés 28 Date d'inscription mercredi 30 mai 2012 Statut Membre Dernière intervention 13 février 2015 - 6 févr. 2015 à 15:16
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 7 févr. 2015 à 17:49
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...
A voir également:

3 réponses

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
7 févr. 2015 à 01:31
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
0
Utilisateur anonyme
7 févr. 2015 à 01:54
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).
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
Modifié par mamiemando le 7/02/2015 à 17:49
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
0