rimram31 a écrit :... sauf la toute première ligne du bin/sh mais ça c'est encore une autre histoire ...
Désolé, j'aurai du être plus explicite dès mon premier post. Le premier #, plutôt le #! en 1ere ligne/1ere colonne est quelque chose de particulier.
Les commandes du fichier sont des commandes "shell", il en existe plusieurs (ssh, csh, bash ...) là c'est du sh. Tu pourrais exécuter ton script en tapant en ligne de commande "/usr/bin/sh le_nom_chemin_de_ton_fichier", fichier sans le #! en 1ere ligne, ça marche. La syntaxe #! en 1ere ligne est un raccourci qui permet de taper directement: le_nom_chemin_de_ton_fichier (plutot le + souvent ./le_nom_chemin_de_ton_fichier ) Tu peux en faire de même pour tout shell, du python, du perl, php ... ça n'a pas de lien avec sh.
Par contre ensuite le # en 1er caractère de sh est interprété comme un commentaire et donc ignoré, dans ton cas le #fi est donc ligne de commentaire et le if n'est pas fermé.
Code : Tout sélectionner
#!/bin/sh
result=$(curl -s http://192.168.X.XX:XXXX/json.htm?type=devices&rid=9l jq -r .result[].Havetimeout)
echo $result
if [ $result = "false" ]
then
sudo service domoticz.sz restart
fi
Ca devrait aller mieux, le plus simple est de chercher des exemples sur le net, on trouve vite son bonheur sur des exemples de syntaxe.