Bonjour,
Comment contrôler le read input dans un script shell
Exemple:
echo "Please enter your name and your surname:"
read name surname
echo "Welcome $name $surname"
ici je veux contrôlé si le name et le surname sont introduit tous les deux dans le cas contraire un message d'erreur ce retourne jusqu'au que le name et surname sont introduit pour que l'echo s'exécute
Merci d'avance pour vos propositions !
# test et boucle
Posté par NeoX . Évalué à 5. Dernière modification le 01 novembre 2013 à 09:56.
lire ton cours sur les tests conditionnels
et sur les boucles.
voire uniquement sur les boucles
l'idée etant, comme tu l'as ecris en francais, de boucler tant que le nom et le prenom ne sont pas rempli.
un test est une condition "si condition alors action" et se dit en anglais
if condition then action
une boucle sera plutot un "tant que condition faire action", qui s'ecrit
while condition do action
dans ton terminal :
man bash
man sh
dans ton navigateur :
bash loop and condition
# boucle while
Posté par james001 . Évalué à 0. Dernière modification le 01 novembre 2013 à 11:20.
merci pour l'info Neox
je suis encore bloqué ci-dessous le scripte
[^] # Re: boucle while
Posté par NeoX . Évalué à 3. Dernière modification le 01 novembre 2013 à 11:20.
lire la documentation sur les tests/conditions et les booleens (ET/OU)
eventuellement ton cours
tu as ecrit une boucle while, techniquement elle est bonne
mais il te manque les tests pour savoir si $name est rempli ET $surname est rempli
ou plutot l'inverse puisque tu veux savoir si l'un des deux, ou les deux sont vides.
dans ton cas tu veux tester si
$name OU $surname OU les deux sont vides/null
don tu veux tester si
$name est vide OU $surname est vide
et pour l'usage du forum, quand tu veux repondre, tu peux cliquer sur "repondre" plutot que "poster un commentaire"
[^] # Re: boucle while
Posté par james001 . Évalué à 1.
merci NeoX pour l'explication , Je suis nouveau sur le forum et nouveau pour la programmation shell sur linux :)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.