|
|
|
|
Salut jaxx,
|
Salut , en utilisant return :
|
Encore un petit truc :
|
Oh yes. Il faut utiliser stderr (>&2) pour rediriger un echo.
#!/bin/bash
#
# Note : le #! est obligatoire pour que le variable=$(commande)
# soit interprete par le shell
#
ma_fonction()
{
if [ ${1} -lt ${2} ]
then
echo "estpluspetit ${1} ${2}"
else
echo "erreur !!!" >&2
fi
}
resultat=$(ma_fonction ${1} ${2})
echo ${resultat}
Exemples : * Cas normal d'utilisation : 1 est plus petit que 2, le message s'affiche $ ./test2.sh 1 2 estpluspetit 1 2 * On redirige stdout vers /dev/null : 1 est plus petit que 2, le message ne s'affiche pas (il part vers /dev/null) $ ./test2.sh 1 2 > /dev/null * Mise en évidence de stderr : 11 est plus grand que 2 et on redirige stdout vers /dev/null et le message erreur !!! d'affiche dans stderr qui n'est pas redirigé $ ./test2.sh 11 2 > /dev/null erreur !!! Voili voilà ... Jean-Pierre Zuate La Fage Conseil |