Nos sistemas Linux, você geralmente pode encontrar um grande número de scripts de exemplo em: /etc/bash_completion.d
. Se você adquirir esses scripts, obterá o comportamento de preenchimento automático.
Eu incluí um exemplo desse diretório. Este é o script de conclusão do unrar.
_unrar()
{
local cur
COMPREPLY=()
_get_comp_words_by_ref cur
if [[ "$cur" == -* ]] ; then
COMPREPLY=( $( compgen -W '-ad -ap -av- -c- -cfg- -cl -cu \
-dh -ep -f -idp -ierr -inul -kb -o+ -o- -ow -p -p- -r -ta \
-tb -tn -to -u -v -ver -vp -x -x@ -y' -- "$cur" ) )
else
if [ $COMP_CWORD -eq 1 ]; then
COMPREPLY=( $( compgen -W 'e l lb lt p t v vb vt x' -- "$cur" ) )
else
_filedir '@(rar|RAR)'
fi
fi
} &&
complete -F _unrar -o filenames unrar