Analyse des options d’un script avec getopts getopts
Syntaxe
getopts liste-options-attendues option
La commande interne getopts permet à un
script d’analyser les options qui lui ont été passées
en argument. Chaque appel à getopts analyse l’option suivante
de la ligne de commande. Pour vérifier la validité de
chacune des options, il faut appeler getopts à partir
d’une boucle.
Définition d’une option
Pour getopts,
une option est composée d’un caractère précédé d’un
signe "+" ou "-".
Exemple
"-c" et "+c" sont des options, tandis
que "christie" est un argument :
# gestuser.sh -c christie
# gestuser.sh +c
Une option peut fonctionner seule ou être associée à un
argument.
Exemple
Voici le script gestuser.sh qui
permet d’archiver et de restaurer des comptes utilisateur. Les options -c et -x signifient
respectivement "Créer une archive" et "Extraire une archive".
Ce sont des options sans argument. Les options -u et -g permettent
de spécifier la liste des utilisateurs et la liste des
groupes à traiter. Elles doivent être suivies
d’un argument.
# gestuser.sh -c -u christie,bob,olive
# gestuser.sh -x -g cours -u christie,bob
Pour tester si les options et arguments passés au
script gestuser.sh sont ceux attendus,
le développeur écrira :
getopts "cxu:g:" option
Explication ...