Programmation shell sh
Guillaume
-
lami20j -
lami20j -
Bonjour,
j'essai d'écrire un script qui affiche un menu et qui en cas d'erreur sur le choix du menu retourne un message d'erreur voici mon code :
#!/bin/sh
echo "choix 1-: calcul de ma moyenne "
echo "choix 2-: calcul de la somme "
echo "choix 3-: le minimum "
echo "choix 9-:Quitter"
read choix
while [ choix != "9" ]
do
case
1 ) echo "Je calcule cela"
2 ) echo "Je fais ca immédiatement"
3 ) echo "boubourse c'est facile mais je le fais"
9 ) break
* ) echo "Hé tu sais lire ou pas "
esac
read choix
done
et ce me renvoi comme erreur apres lecture du choix :
./essai.sh: 12: Syntax error: newline unexpected (expecting word)
Pouvez vous m'aidez s'il vous plaît?
Une autre question également je voudrai savoir comment fait t-on la division entiere de 2 arguments ?
En vous remerciant
j'essai d'écrire un script qui affiche un menu et qui en cas d'erreur sur le choix du menu retourne un message d'erreur voici mon code :
#!/bin/sh
echo "choix 1-: calcul de ma moyenne "
echo "choix 2-: calcul de la somme "
echo "choix 3-: le minimum "
echo "choix 9-:Quitter"
read choix
while [ choix != "9" ]
do
case
1 ) echo "Je calcule cela"
2 ) echo "Je fais ca immédiatement"
3 ) echo "boubourse c'est facile mais je le fais"
9 ) break
* ) echo "Hé tu sais lire ou pas "
esac
read choix
done
et ce me renvoi comme erreur apres lecture du choix :
./essai.sh: 12: Syntax error: newline unexpected (expecting word)
Pouvez vous m'aidez s'il vous plaît?
Une autre question également je voudrai savoir comment fait t-on la division entiere de 2 arguments ?
En vous remerciant
A voir également:
- Programmation shell sh
- Classic shell - Télécharger - Personnalisation
- Application de programmation - Guide
- Fichier .sh - Forum Shell
- Programmation aria soho ✓ - Forum LG
- Exécuter un script shell - Astuces et Solutions
5 réponses
Salut,
lami20j@debian-acer:~/shell$ cat choix.sh #!/bin/sh echo "choix 1-: calcul de ma moyenne " echo "choix 2-: calcul de la somme " echo "choix 3-: le minimum " echo "choix 9-:Quitter" read choix while [ choix != "9" ] do case $choix in '1' ) echo "Je calcule cela" ;; '2' ) echo "Je fais ca immédiatement" ;; '3' ) echo "boubourse c'est facile mais je le fais" ;; '9' ) break ;; * ) echo "Hé tu sais lire ou pas " ;; esac read choix done lami20j@debian-acer:~/shell$ sh choix.sh choix 1-: calcul de ma moyenne choix 2-: calcul de la somme choix 3-: le minimum choix 9-:Quitter 1 Je calcule cela 2 Je fais ca immédiatement 3 boubourse c'est facile mais je le fais 45 Hé tu sais lire ou pas 9
Re,
Ca aurait sympa de nous montrer ce que tu as essayé.
Voici pour la division entière
Ca aurait sympa de nous montrer ce que tu as essayé.
Voici pour la division entière
lami20j@debian-acer:~/shell$ cat division.sh #!/bin/sh if [ $# -ne 2 ] then echo "Usage : $0 n1 n2" exit 1 fi if [ $2 -eq 0 ] then echo "Division par zéro" exit 2 else echo "$1 / $2 = " $(($1/$2)) fi lami20j@debian-acer:~/shell$ ./division.sh Usage : ./division.sh n1 n2 lami20j@debian-acer:~/shell$ ./division.sh 6 Usage : ./division.sh n1 n2 lami20j@debian-acer:~/shell$ ./division.sh 60 20 60 / 20 = 3 lami20j@debian-acer:~/shell$ ./division.sh 60 27 60 / 27 = 2 lami20j@debian-acer:~/shell$ ./division.sh 0 7 0 / 7 = 0 lami20j@debian-acer:~/shell$ ./division.sh 9 0 Division par zéro
Merci beaucoup lamij20 ! C'est que je début en script schell je suis en DUT informatique 1ere année et que j'avais tenté ca une expresion courte comme echo `expr $1 / $2 ` mais ca n'avait pas marché
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question