Bonjour à tous, et plus particulièrement aux experts de la syntaxe en bash 😉
Je suis actuellement en train de mettre en place un système de supervision et j'utilise nrpe pour lancer un script à distance.
Le script, lancé manuellement sur la machine distante s'execute sans aucun problème, le retour est bien envoyée.
Malheureusement lorsque le script est lancé et que le résultat est envoyé au serveur de supervision alors la le echo est vide, la valeur du exit est bien prise en compte.
Après multiples tests, je pense très fortement que le problème est au niveau de la syntaxe de la commande.
Voila la très courte partie concernée 😀
asterisk_command="core show calls"
asterisk_bin="/usr/bin/asterisk"
asterisk_option="-rx"
result=`$asterisk_bin $asterisk_option $asterisk_command | grep active`
echo $numberofcall
exit 0
Les & sont en réalité des `
En exécutant le script localement le résultat est : 1 active channel avec un retour exit 0
En exécutant le script à distance le résultat est : strictement aucun caractère avec un retour exit 0
Info : Après le -rx doit se trouver "une chaine de caractère entre guillemets"
Info 2 : Le problème est identique en mettant des guillemets autour de $asterisk_command
Merci 🙂