# Question condition multiple en bash

**URL:** <https://www.debian-fr.org/t/question-condition-multiple-en-bash/53190>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 12:04 UTC](https://www.debian-fr.org/t/question-condition-multiple-en-bash/53190 "2016-02-21T12:04:50Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![pitcat](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/ecccb3/32.png) [@pitcat](https://www.debian-fr.org/u/pitcat)\
**Post date:** [Février 21, 2016, 12:04 UTC](https://www.debian-fr.org/t/question-condition-multiple-en-bash/53190/1 "2016-02-21T12:04:50Z")

</div>

Bonjour tous  
je cherche une méthode pour écrire un script qui intègre plusieurs conditions depuis un menu.

```auto
menu 1
condition 1
action 1
condition 2
ne fait rien

menu 1 ou menu 2 ou menu 3  
action commune au 3 menu mais dont menu 1 dépend de condition 1 et action 1 pour exécuter l'action.
```

pour l’instant cela se déroule bien sauf que menu 1 s’exécute quand même hors je voudrais qu’il s’exécute que si condition 1 et action 1 sont exécutées.

Merci d’avance pour votre aide

---

<div class="post-metadata">

**Author:** ![spacemax](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/s/3d9bf3/32.png) [@spacemax](https://www.debian-fr.org/u/spacemax)\
**Post date:** [Février 21, 2016, 12:04 UTC](https://www.debian-fr.org/t/question-condition-multiple-en-bash/53190/2 "2016-02-21T12:04:55Z")

</div>

Bonjour,

tu peux utiliser l’instruction case comme ceci :

#!/bin/bash  
menu()  
{  
clear  
echo '**_’  
echo '\* Utilitaires \*'  
echo '_**’  
echo -e '\n’  
echo '1) Option 1’  
echo '2) Option 2’  
echo '3) Option 3’  
echo '9) Quit’  
echo 'Votre choix : '  
read choix  
}

choix=0  
while [$choix!=9]  
do  
menu # Fonction plus haut qui affiche le menu  
case $choix in  
1) fonction1;;  
2) fonction2;;  
3) fonction3;;  
9)exit;;  
\*) echo -e “Mauvais choix.\nAppuyer sur [RETOUR]” && read var && clear && menu;;  
esac  
done

Voila en espérant t’avoir aider…

---

<div class="post-metadata">

**Author:** ![pitcat](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/ecccb3/32.png) [@pitcat](https://www.debian-fr.org/u/pitcat)\
**Post date:** [Février 21, 2016, 12:13 UTC](https://www.debian-fr.org/t/question-condition-multiple-en-bash/53190/3 "2016-02-21T12:13:06Z")

</div>

Lu spacemax  
merci de ton aide.  
j’ai une autre question.  
En variable j’ai :

```auto
CONFIGURE="--prefix=/usr/local --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-gnu-ld"
CONFIGURE_X="--enable-valgrind --enable-amalgamation"
CONFIGURE_Y="--enable-cpu-c --enable-buffer --enable-pthreads"

X et Y sont des dossiers de lib à compiler.
```

j’ai une boucle for :

```auto
for I in $REP ; do
pushd $REP/$I

$CONFIGURE 

```

J’aimerais que $I s’ajoute à mon CONFIGURE\_ pour faire CONFIGURE\_X CONFIGURE\_Y hors ne n’y arrive pas.

une idée ?  
merci à plus
