Bonjour,
Je suis en train de coder un script pour le déploiement d’instance subversion et trac, et je bloque sur une condition.
Le but est de voir si il existe des répertoires dans /var/subtrac/, si oui alors faire un ls, si non afficher “no instance found”.
voici ma première idée :
if ! [ -d /var/subtrac/* ]; then
echo "No instance found"
else
echo "Instance :"
ls -l /var/subtrac/
fi
Ce code fait un ls -l /var/subtrac si un répertoire est détecté dans /var/subtrac/
mais nous donne “No instance found” si il n’existe pas de répertoire.
Ceci fonctionne parfaitement.
Maintenant si nous créons 2 répertoire dans /var/subtrac/ : toto1 et toto2
le résultat du script nous donne :
menu.sh: line 70: [: /var/subtrac/toto: binary operator expected
No instance found
J’ai testé plusieurs type de condition : “test”, “$1”, ect…
mais j’ai toujours cette erreur.
Je pense que l’erreur viens du fait quand rajoutant l’étoile dans la condition, cela créer une multi-condition, et que le script ne comprends pas.
Auriez-vous une idée ?
Amicalement,
Fabien Schmitz