On Sun, 17 Mar 2002 12:33:00 +0100 Francois Massonneau <[EMAIL PROTECTED]>(by way of Francois Massonneau <[EMAIL PROTECTED]>) wrote:
> Bonjour, > > Une petite question concernant l'écriture d'un script. Je voulais > faire un test sur ce qui était tapé au clavier, ainsi si on tapait > "a" en minuscule ou "A" en majuscule, on faisait telles et telles > instructions. Voilà la partie de code : > > echo -n "Your choice ? : " > read "what_to_do" > if test [[ "$what_to_do" = "a" ]] || [[ "$what_to_do" = "A" ]] ; then > etc.. > > Ben ça marche pas. Il n'aime pas avoir un "test" avec "ou". > > Pour que ça marche, il m'a fallu faire ça : > > if test "$what_to_do" = "a" ; then > etc... > elif test "$what_to_do" = "A" ; then > etc... > > Mais auriez vous une solution pour que la première version fonctionne > ? > Merci. Francois > > case me semble plus approprié, à moins que tu aies de bonnes raisons! si tu veux une action différente pour a et A: case $what_to_do in a) action1 ;; A) action2 ;; *) action3 ;; esac si tu veux la même action pour a et A: case $what_to_do in a|A) action1 ;; *) action2 ;; esac sinon, pour pour test: "test expr1 -o expr2" renvoie 0 si expr1 ou expr2 sont vraies "test expr1 -a expr2" renvoie 0 si expr1 et expr2 sont vraies bye jipe
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"