Aller au contenu

[Shell / Bash] unary operator expected


Messages recommandés

Bonjour, j'ai un probleme avec un script.

Ce dernier est censé agir suivant les arguments passés.

Mais il se pose un probleme avec les argument qui engendre un regard sur le paramêtre suivant. Exemple -f doit être suivit d'un nom de fichier... La manière dont je prend le probleme est exposé à la suite.

#!/bin/sh

for I in $*; do
if [ $ENTREE -eq 1 ]; then
ENTREE_F=$I
ENTREE=2
continue
fi

if [ $RECH -eq 1 ]; then
RECH_T=$I
RECH=2
continue
fi

if [ $AUT -eq 1 ]; then
AUT_N=$I
AUT=2
continue
fi

if [ $I == -f ]; then
ENTREE=1
continue
fi

if [ $I == -affichage ]; then
AFF=2
continue
fi

if [ $I == -affichage_texte ]; then
AFF_TXT=2
continue
fi

if [ $I == -recherche ]; then
RECH=1
continue
fi

if [ $I == -auteur ]; then
AUT=1
continue
fi
done

echo ENTREE=$ENTREE ENT_F=$ENTREE_F AFF=$AFF AFF_TXT=$AFF_TXT RECH=$RECH RECH_T=$RECH_T AUT=$AUT AUT_N=$AUT_N

Mais lorsque je l'execute, j'ai un erreur me disant "unary operator expected" ligne 4, 9 et 14, respectivement : if [ $ENTREE -eq 1 ] ; then, if [ $RECH -eq 1 ] ; then et if [ $AUT -eq 1 ] ; then.

Est-ce que quelqu'un peut m'aider ? Merci.

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...