Предположим у нас есть несколько аргументов(ключей) для локального скрипта ./local.sh
Usage: ./local.sh [--build|--down|--rebuild|--dump|--restore-dump|--clean|--help]
Создадим простенький конфиг bash_completion для этого скрипта чтобы по tab нажатию получать автодополнения наших ключей.
Для начала установим необходимый пакет
sudo apt update && sudo apt install bash-completion
Создаем файлик /etc/bash_completion.d/local с содержимым
_local_completions()
{
COMPREPLY=()
local cur="${COMP_WORDS[COMP_CWORD]}"
local opts="--build --down --rebuild --dump --restore-dump --clean --help"
# Генерация возможных завершений
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
return 0
}
# Регистрация функции автодополнения для скрипта
complete -F _local_completions ./local.sh
После перезапуска оболочки, автодзавершения будут работать для данного скрипта. Данную функцию можно опционально добавить и в .bashrc