Problème condition shell imbriqué

Résolu
gijoe83160 Messages postés 2 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
A voir également:

3 réponses

linuxnico Messages postés 206 Statut Membre 10
 
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)
0
gijoe83160 Messages postés 2 Statut Membre
 
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 &&.
0
linuxnico Messages postés 206 Statut Membre 10
 
bien.

un petit resolu dans ton post? ca serai bien
0