Je souhaite réaliser une action en fonction des options passé au script lors du lancement. Ces options contiennent des arguments.
ex : ./script.sh -a application -m maj
où, -a et -m sont des options suivi de leurs arguments. A savoir, si l'option -a est utilisé, elle doit être impérativement suivi par l'option -m
Or, je but sur le fait qu'il y ai plusieurs option à arguments. J'ai essayé avec getopts, ce qui me donne ca (très moche je suppose mais qui fonctionne)
Avec ce que j'ai fait au dessus, il n'y a pas de contrôle d'erreur, si je fais un -a -m, -m devient argument de -a ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 # CHOIX ARGS while getopts :lha:m: OPTION; do case $OPTION in l) listing ;; h) usage ;; a) apply=$OPTARG ;; m) type=$OPTARG action ;; :) echo "$OPTARG need args" exit 5 ;; \?) echo "option '$OPTARG' incorrecte" exit 3 ;; esac doneC'est super pas sécure du tout. Auriez-vous des idées qui pourrait me permettre de dompter getopts ?
Partager