# bash completion for Debian apache2 configuration tools _apache2_allcomp() { command ls /etc/apache2/$1 2>/dev/null } _apache2_mods() { COMPREPLY=( $( compgen -W '$( _apache2_allcomp $1 \ | sed -e 's/[.]load$//' -e 's/[.]conf$//' )' -- $cur ) ) } _apache2_sites() { COMPREPLY=( $( compgen -W '$( _apache2_allcomp $1 )' -- $cur ) ) } _apache2_conf() { COMPREPLY=( $( compgen -W '$( _apache2_allcomp $1 \ | sed -e 's/[.]conf$//' )' -- $cur ) ) } _a2enmod() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_mods mods-available } complete -F _a2enmod a2enmod _a2ensite() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_sites sites-available } complete -F _a2ensite a2ensite _a2enconf() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_conf conf-available } complete -F _a2enconf a2enconf _a2dismod() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_mods mods-enabled } complete -F _a2dismod a2dismod _a2dissite() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_sites sites-enabled } complete -F _a2dissite a2dissite _a2disconf() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} _apache2_conf conf-enabled } complete -F _a2disconf a2disconf