#!/bin/bash
# Fonctions et paramètres

DEFAUT=defaut                               # Valeur par défaut.

fonc2 () {
   if [ -z "$1" ]                           # Est-ce que la taille du paramètre
	                                    # #1 a une taille zéro ?
   then
     echo "-Le paramètre #1 a une taille nulle.-"  # Ou aucun paramètre n'est passé.
   else
     echo "-Le paramètre #1 est \"$1\".-"
   fi

   variable=${1-$DEFAUT}                    #  Que montre la substitution de
   echo "variable = $variable"              #+ paramètre?
                                            #  ---------------------------
                                            #  Elle distingue entre pas de
                                            #+ paramètre et un paramètre nul.

   if [ "$2" ]
   then
     echo "-Le paramètre #2 est \"$2\".-"
   fi

   return 0
}

echo
   
echo "Aucun argument."   
fonc2                             # Appelé sans argument
echo


echo "Argument de taille nulle."
fonc2 ""                          # Appelé avec un paramètre de taille zéro
echo

echo "Paramètre nul."
fonc2 "$parametre_non_initialise" # Appelé avec un paramètre non initialisé
echo

echo "Un paramètre."   
fonc2 premier                     # Appelé avec un paramètre
echo

echo "Deux paramètres."   
fonc2 premier second              # Appelé avec deux paramètres
echo

echo "\"\" \"second\" comme argument."
fonc2 "" second                   # Appelé avec un premier paramètre de taille nulle
echo                              # et une chaîne ASCII pour deuxième paramètre.

exit 0
