Script shell unix
Résolu/Fermé
simo
-
11 août 2008 à 13:39
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 13 août 2008 à 10:43
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 13 août 2008 à 10:43
A voir également:
- Script shell unix
- Script vidéo youtube - Guide
- Classic shell windows 11 - Télécharger - Personnalisation
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
21 réponses
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 898
13 août 2008 à 10:43
13 août 2008 à 10:43
Attention !!! Dans le script ci-dessous, la syntaxe du test entre crochets doit être écrite sans l'espace entre les deux premiers crochets ouvrants. Ici j'y suis obligé à cause de la syntaxe employée par CCM pour l'emploi des doubles crochets ;-((
$ cat couleurs.txt # fichier externe contenant les couleurs et leur code Couleur : verte Code : 1 Couleur : jaune Code : 2 Couleur : rouge Code : 3 $ cat foo.ksh # script en korn shell #! /bin/ksh clear while : do echo "Choisissez une ou 2 valeur(s) maximum\nséparées par une virgule (ex : 1,2)\n" cat -n couleurs.txt echo read choix if [ [ "$choix" = "" ]] then echo "Vous devez choisir au moins une valeur... recommencez s'il vous plaît.\n" continue fi IFS=, set $(echo "$choix") if (( "$#" > 2 )) then echo "Vous ne pouvez choisir que 2 valeurs maximum... recommencez s'il vous plaît.\n" continue fi break done set -A tableau $( for i in "$@" do awk -F" " 'NR=='"$i"' { printf "%s %d ",$3,$6 }' couleurs.txt done) echo "Paramètres du tableau = ${tableau[*]}" $L'exécution :
$ ./foo.ksh Choisissez une ou 2 valeur(s) maximum séparées par une virgule (ex : 1,2) 1 Couleur : verte Code : 1 2 Couleur : jaune Code : 2 3 Couleur : rouge Code : 3 <<<< # Aucune valeur n'est saisie Vous devez choisir au moins une valeur... recommencez s'il vous plaît. Choisissez une ou 2 valeur(s) maximum séparées par une virgule (ex : 1,2) 1 Couleur : verte Code : 1 2 Couleur : jaune Code : 2 3 Couleur : rouge Code : 3 1,3,2 Vous ne pouvez choisir que 2 valeurs maximum... recommencez s'il vous plaît. Choisissez une ou 2 valeur(s) maximum séparées par une virgule (ex : 1,2) 1 Couleur : verte Code : 1 2 Couleur : jaune Code : 2 3 Couleur : rouge Code : 3 3,1 Paramètres du tableau = rouge 3 verte 1 $;-))