# chgrp(1) completion -*- shell-script -*- _chgrp() { local cur prev words cword split _init_completion -s || return cur=${cur//\\\\/} if [[ $prev == --reference ]]; then _filedir return fi $split && return # options completion if [[ $cur == -* ]]; then local w opts for w in "${words[@]}"; do [[ $w == -@(R|-recursive) ]] && opts="-H -L -P" && break done COMPREPLY=($(compgen -W '-c -h -f -R -v --changes --dereference --no-dereference --silent --quiet --reference --recursive --verbose --help --version $opts' -- "$cur")) return fi # first parameter on line or first since an option? if [[ $cword -eq 1 && $cur != -* || $prev == -* ]]; then _allowed_groups "$cur" else _filedir fi } && complete -F _chgrp chgrp # ex: filetype=sh