[SHELL] Options de la commande READ ?
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai un petit soucis avec READ. Enfin, je ne sais pas si c'est avec cette commande ^^ Je m'explique.
J'ai ceci par exemple :
J'aimerais en fait que le "Read" ne prenne pas en compte la casse. C'est-à-dire, que là, en l'état actuel, si je tape "ric", cela me sort du programme. Si je tape "RIC", cela me dit bien "Salut RIC".
Donc je voudrais que même en tapant "ric" ou "Ric", cela me dise "Salut ric" ou "Salut Ric" ... Possible ?
Merci. :)
Là où flotte le drapeau Comtois, qui que tu sois, tu es chez toi !
"Plains ceux qui ont peur car ils créent leur propre terreur"
J'ai un petit soucis avec READ. Enfin, je ne sais pas si c'est avec cette commande ^^ Je m'explique.
J'ai ceci par exemple :
#!/bin/bash
read -p "Tape ton prénom : " nom
if [ $nom = RIC ]
then
echo Salut $nom
else exit
fi
J'aimerais en fait que le "Read" ne prenne pas en compte la casse. C'est-à-dire, que là, en l'état actuel, si je tape "ric", cela me sort du programme. Si je tape "RIC", cela me dit bien "Salut RIC".
Donc je voudrais que même en tapant "ric" ou "Ric", cela me dise "Salut ric" ou "Salut Ric" ... Possible ?
Merci. :)
Là où flotte le drapeau Comtois, qui que tu sois, tu es chez toi !
"Plains ceux qui ont peur car ils créent leur propre terreur"
A voir également:
- Shell read
- Classic shell - Télécharger - Personnalisation
- Classic shell c'est quoi ✓ - Forum Windows 10
- Ssh secure shell - Télécharger - Divers Web & Internet
- L'état de la memoire ne peut pas etre read - Astuces et Solutions
- A disk read error occurred - Forum Windows
5 réponses
Salut,
;-))
#!/bin/bash
read -p "Tape ton prénom : " nom
if [[ ${nom} =~ [Rr][Ii][Cc] ]]
then
echo Salut ${nom}
else exit
fi
;-))
hello
#!/bin/bash
read -p "Tape ton prénom : " nom
if [ ${nom,,} = ric ]
then
echo "Salut $nom"
else
exit
fi
ajoutons, par souci de clarté, que entre crochets simples les guillemets autour des variables sont plus que chaudement recommandés.
alors qu'ils ne sont pas nécessaires entre double crochets.
alors qu'ils ne sont pas nécessaires entre double crochets.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci, ça marche parfaitement de cette façon :) C'est une chose à garder, très utile :D
Merci
++
EDIT : Exemple ici :
#!/bin/bash #début read -p "Tape ton nom :" nom read -p "Tape ton prénom :" prenom clear tableau=('ric' 'xxx' 'jean' 'yyy' 'pierre', 'zzz') if [ $prenom = ${tableau[0]} ] && [ $nom = ${tableau[1]} ] then echo Bonjour à toi $prenom elif [ $prenom = ${tableau[2]} ] && [ $nom = ${tableau[3]} ] then echo Bonjour à toi $prenom elif [ $prenom = ${tableau[4]} ] && [ $nom = ${tableau[5]} ] then echo Bonjour à toi $prenom else echo Utilisateur inconnu ! && exit fi* Pour ne pas que la casse soit prise en compte partout :)
* Et sinon, y'a pas plus simple que le tableau, si je dois entrer des noms et prénoms plus nombreux ?
++
ou utiliser la variable BASHOPTS, voir man bash
ou utiliser ma méthode au cas par cas #3
oui, le tableau est le meilleur stockage pour une liste de valeurs