#!/bin/bash
#  lookup : Effectue une recherche basée sur un dictionnaire sur chaque mot d'un
#+ fichier de données.

fichier=mots.donnees  #  Le fichier de données à partir duquel on lit les mots à
                      #+ tester.

echo

while [ "$mot" != end ]  # Le dernier mot du fichier de données.
do              # ^^^
  read mot      #  Depuis le fichier de données, à cause de la redirection à la
                #+ fin de la boucle.
  look $mot > /dev/null  #  Nous ne voulons pas afficher les lignes dans le
                         #+ dictionnaire.
  lookup=$?      # Code de sortie de 'look'.

  if [ "$lookup" -eq 0 ]
  then
    echo "\"$mot\" est valide."
  else
    echo "\"$mot\" est invalide."
  fi  

done <"$fichier"    #  Redirige stdin vers $fichier, donc les "lectures"
                    #+ commencent à partir d'ici.

echo

exit 0

# -----------------------------------------------------------------------------
# Le code ci-dessous ne s'exécutera pas à cause de la commande exit ci-dessus


# Stephane Chazelas propose aussi ce qui suit, une alternative plus concise :

while read mot && [[ $mot != end ]]
do if look "$mot" > /dev/null
   then echo "\"$mot\" est valide."
   else echo "\"$mot\" est invalide."
   fi
done <"$fichier"

exit 0
