# Commande set



## Membre supprimé 2 (21 Mars 2009)

Hello,

Je suis en train de suivre un tuto sur la programmation shell.
Dans la version pdf il y a des exercices pour se faire la main, mais il ne donne pas les solutions.
C'est dommage parce que je suis bloqué sur l'exercice qui concerne la commande *set* :

*Exercice 3 : Ecrire un programme shell  nbmots qui demande à l'utilisateur de saisir une suite 
quelconque de mots puis affiche le nombre de mots saisis. 

Ex : $ nbmots 
Entrez une suite de mots : un deux trois quatre cinq 
5  =>  5 mots ont été saisis*

Autant avec la commande *read* tout ce passe bien vu que c'est son rôle de récupérer des données saisies.
Mais là je ne vois pas comment récupérer une suite de mots pour les enregistrer en tant que valeur $1, $2, ...

Quelqu'un saurait m'orienter vers la solution ?

D'avance merci.


----------



## ben206stras (21 Mars 2009)

Tu peux passer par awk et terminer par un echo de la variable spéciale (de awk) $NF.


----------



## Membre supprimé 2 (22 Mars 2009)

ben206stras a dit:


> Tu peux passer par awk et terminer par un echo de la variable spéciale (de awk) $NF.



Le problème c'est que "awk" n'as pas encore été abordé à ce stade du tuto, il y a sûrement une solution via "set".
Le truc c'est que je voudrai pas griller les étapes, histoire de bien assimiler toutes les nuances de chaque commande.

Merci quand même.


----------



## Membre supprimé 2 (24 Mars 2009)

La réponse est ici

Je me suis fait avoir comme un bleu en fait ^^


----------

