--- /dev/null
+_mountdisk(){
+ # declaration des variables locales
+ local argc first cur opts
+
+ #COMPREPLY désigne la réponse à renvoyer pour la complétion actuelle
+ COMPREPLY=()
+
+ # argc : vaut le nombre d'argument actuel sur la ligne de commande
+ argc=${COMP_CWORD};
+
+ # cur : désigne la chaine de caractère actuelle pour le dernier mot de la ligne de commande
+ first="${COMP_WORDS[1]}"
+ cur="${COMP_WORDS[argc]}"
+ opts="$(mountdisk -l)"
+
+ # les options possibles pour notre auto-complétion
+ if [ $argc -eq 1 ]; then
+ # on auto-complete la ligne de commande en recherchant cur dans la liste opts.
+ #A noter que le -- est important ici pour éviter les "injections d'options" depuis $cur.
+ COMPREPLY=( $(compgen -W "$opts" -- $cur ) )
+ return 0
+ fi
+}
+
+# On active l'auto-completion de la commande
+complete -F _mountdisk mountdisk