Problème condition shell imbriqué
Résolu
gijoe83160
Messages postés
2
Statut
Membre
-
linuxnico Messages postés 206 Statut Membre -
linuxnico Messages postés 206 Statut Membre -
Bonjour,
Je vais vous indiquer mon code et vous dire le message d'erreur que j'ai.
#!/bin/bash
HOST=`hostname`
echo "1- tutu"
echo "2- toto"
echo "3- tata"
echo "4- titi"
read -p "veuillez choisir le nom de la personne : " CHOICE
if [ "$CHOICE" == "1" ] || [ "$CHOICE" == "4" ]
then
if [ "$HOST" != "windows" ] || [ "$HOST" != "linux" ]
then
echo "veuiller lancer la commande depuis le poste windows ou linux"
fi
echo "la personne est $CHOICE"
fi
Mon problème est que le premier if avec la condition "ou" fonctionne mais quand le deuxième s'execute le message suivant s'affiche [missing ] .
Je ne comprends pas pourquoi la première condition avec le ou fonctionne mais pas la deuxième
Merci
Je vais vous indiquer mon code et vous dire le message d'erreur que j'ai.
#!/bin/bash
HOST=`hostname`
echo "1- tutu"
echo "2- toto"
echo "3- tata"
echo "4- titi"
read -p "veuillez choisir le nom de la personne : " CHOICE
if [ "$CHOICE" == "1" ] || [ "$CHOICE" == "4" ]
then
if [ "$HOST" != "windows" ] || [ "$HOST" != "linux" ]
then
echo "veuiller lancer la commande depuis le poste windows ou linux"
fi
echo "la personne est $CHOICE"
fi
Mon problème est que le premier if avec la condition "ou" fonctionne mais quand le deuxième s'execute le message suivant s'affiche [missing ] .
Je ne comprends pas pourquoi la première condition avec le ou fonctionne mais pas la deuxième
Merci
Configuration: Windows XP Internet Explorer 6.0
3 réponses
-
je comprends pas trop ce que tu veux faire, mais dans ton deuxième IF, tu veux pas savoir si $HOST est différent de windows ET différents de Linux???
parce que la ta mis un OU?
sinon, je pige pas ton [missing] c'est ton erreur? (mets voir le vrai résultats de ton script une copie du shell) -
Merci pour la réponse,
en fait je n'avait pas d'erreur, j'ai confondu avec une autre manière d'écrire. Tu avais raison c'est ma logique qui n'était pas bonne. En y réfléchissant un petit peu la condition est &&. -