_mkfs_module() | |
{ | |
local cur prev OPTS | |
COMPREPLY=() | |
cur="${COMP_WORDS[COMP_CWORD]}" | |
prev="${COMP_WORDS[COMP_CWORD-1]}" | |
case $prev in | |
'-t'|'--type') | |
FSTYPES=$(for I in /sbin/mkfs.* /usr/sbin/mkfs.*; do if [ -e $I ]; then echo ${I##*mkfs.}; fi; done) | |
COMPREPLY=( $(compgen -W "$FSTYPES" -- $cur) ) | |
return 0 | |
;; | |
'-h'|'--help'|'-V'|'--version') | |
return 0 | |
;; | |
esac | |
case $cur in | |
-*) | |
OPTS='--type --verbose --help --version' | |
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) | |
return 0 | |
;; | |
esac | |
COMPREPLY=( $(compgen -W "$(lsblk -pnro name) /path/to/file" -- $cur) ) | |
return 0 | |
} | |
complete -F _mkfs_module mkfs |