_findfs_module() { local cur prev OPTS findable COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" case $prev in '-h'|'--help'|'-V'|'--version') return 0 ;; esac case $cur in -*) OPTS="--version --help" COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) return 0 ;; esac for i in $(lsblk -rpno label); do findable+=" LABEL=$i" done for i in $(lsblk -rpno uuid); do findable+=" UUID=$i" done for i in $(lsblk -rpno partlabel); do findable+=" PARTLABEL=$i" done for i in $(lsblk -rpno partuuid); do findable+=" PARTUUID=$i" done COMPREPLY=( $(compgen -W "$findable" -- $cur) ) return 0 } complete -F _findfs_module findfs