« Programmation Bash/Interactions avec l'utilisateur » : différence entre les versions

Contenu supprimé Contenu ajouté
m Révocation des modifications de 193.51.172.10 (discussion) vers la dernière version de DavidL
m JackPotte a déplacé la page Programmation bash-ksh/Entrées/Sorties vers Programmation bash-ksh/Entrées-sorties sans laisser de redirection
Ligne 1 :
== Entrées/sorties ==
{{Programmation Bash}}
Deux commandes permettent d'effectuer des entrées/sorties :
* la commande <code>echo</code> affiche des données soit surdans la sortie standard, soit surdans la sortie d'erreur,des erreurs ;
* la commande <code>read</code> litpermet lesde lire des valeurs entrées au clavier et de les stockestocker dans une variable.
 
<code>read var</code> permet de lire une valeur entrée au clavier par l'utilisateur et de stocker cette valeur dans la variable <code>var</code>., par exemple :
== Lire la saisie d'un utilisateur ==
Les commandes suivantes permettent de gérer l'interaction avec l'utilisateur :
* la commande <code>echo</code> affiche des données soit sur la sortie standard, soit sur la sortie d'erreur,
* la commande <code>read</code> lit les valeurs entrées au clavier et les stocke dans une variable.
 
<code>read var</code> permet de lire une valeur entrée au clavier par l'utilisateur et de stocker cette valeur dans la variable <code>var</code>.
 
Exemple :
<pre>
$ read a
Ligne 15 ⟶ 11 :
toto
</pre>
Dans cet exemple, nous appelons <code>read</code> pour litlire une valeur que l'utilisateurnous saisitallons austocker clavierdans enla l'occurencevariable :<code>a</code> toto.; Cette valeurl'utilisateur est stockée dansrentre la variablechaîne <code>atoto</code>. Le; nous affichons le contenu de cettela variable <code>a</code> est affiché grâce àavec <code>echo</code> et son contenu est effectivement <code>toto</code>.
Si aucun nom de variable n'est fourni lors de l'appel de <code>read</code>, la valeur entrée par l'utilisateur est stockée dans la variable <code>REPLY</code>. :
 
 
Si aucun nom de variable n'est fourni lors de l'appel de <code>read</code>, la valeur entrée par l'utilisateur est stockée dans la variable <code>REPLY</code>.
 
Exemple
<pre>
$ read
tata
sidonie
$ echo $REPLY
tata
sidonie
</pre>
 
== Interaction et [[Programmation Bash/Structures conditionnelles#case|case]] ==
 
Souvent, dans les scripts, on trouve la [[Programmation Bash/Structures conditionnelles#case|structure suivante]] :
 
<source lang="bash">
read
case $REPLY in
valeur1) instruction(s);;
valeur2) instruction(s);;
valeur3) instruction(s);;
...
esac
</source>
 
== Instruction <code>select</code> ==
<pre>
<source lang="bash">
echo "Etes vous un homme ou une femme ?"
select i in homme femme; do
if [ x$i = xhomme ]; then
echo "Bonjour monsieur"
break
elif [ x$i = xfemme ]; then
Ligne 56 ⟶ 34 :
fi
done
</sourcepre>
 
[[Catégorie:Programmation Bashbash-ksh (livre)]]