![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
Spitfire378
Merci tamiel j'ai donc essayé avec la fonction test mais a priori mon code comporte toujours un pb
1 2 3 4 5 6 7 8 9
| function lister()
{
if -s /etc/ntp.conf
then
cat /etc/ntp.conf
else
echo "Vide"
fi
} |
Et elle est où la fonction test dans ton code ? (test n'est pas une fonction mais une instruction)
1 2 3 4 5 6 7 8 9
| function lister()
{
if test -s /etc/ntp.conf
then
cat /etc/ntp.conf
else
echo "Vide"
fi
} |
Et sinon, si on revient à ton premier code (qui dénote de grandes qualités dans l'utilisation de tes connaissances actuelles pour résoudre ton problème), il n'y a qu'un défaut pour qu'il marche => les espaces après les crochets du if
if [<un espace ici>"$var" = 0<un espace là>]
Et le point-virgule est inutile
Et en terme de comparaison numérique, vaut mieux utiliser "-eq" plutôt que "=" car "=" est une comparaison littérale alors que "eq" est une comparaison numérique. Par exemple, si tu compares "5" avec "0005" ben avec "=" ça sortira faux alors qu'avec "eq" ça sortira vrai
Cours complet de shell pour Linux ici http://linux.developpez.com/cours/
Partager