[Bash] Parametres et options
Bonjour,
Voulant améliorer un script, je souhaite passer par l'utilisation d'options, via getopts.
Jusqu'à présent, j'utilisais des paramètres fixes, c'est à dire que script prenait 3 paramètres et fonctionnait très bien.
Depuis que j'essaye de mettre en place getopts, il ignore celui (pas très contrariant) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #!/bin/bash
EXPECTED_ARGS=3
E_BADARGS=65
ID=""
while getopts :i: option
do
case "$option" in
i) ID=$OPTARG
;;
:) echo "id non present"
exit 4
;;
\?) echo "Option incorrect"
exit 5
esac
done
if [ $# -lt $EXPECTED_ARGS ]
then
echo "Usage: $0 nom user password"
exit $E_BADARGS
fi
if [ -z $ID]
then ID="dfghj"
fi
echo "Param 1 : $1"
echo "Param 2 : $2"
echo "Param 3 : $3"
echo "Param ID : $ID"
exit |
Comme vous pouvez le voir, j'essaye juste avec un paramètre optionel i, mais dans l'absolu j'aimerais que le paramètre soit id (enfin, plus d'une lettre, sans pour autant avoir le double tiret).
Merci