c875723bef
This way it's clearer to users that an argument is expected. It's likely that this commit does not catch all such cases, but it should do it for most of the affected commands I have installed.
64 lines
1.7 KiB
Bash
64 lines
1.7 KiB
Bash
# bash completion for mysqladmin
|
|
|
|
have mysqladmin || return
|
|
|
|
_mysqladmin()
|
|
{
|
|
local cur prev words cword split
|
|
_init_completion -s || return
|
|
|
|
case $prev in
|
|
-u|--user)
|
|
COMPREPLY=( $( compgen -u -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
-h|--host)
|
|
_known_hosts_real "$cur"
|
|
return 0
|
|
;;
|
|
--character-sets-dir|--ssl-capath)
|
|
_filedir -d
|
|
return 0
|
|
;;
|
|
-S|--socket)
|
|
_filedir sock
|
|
return 0
|
|
;;
|
|
--defaults-file|--defaults-extra-file)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
-c|--count|--default-character-set|-P|--port|-O|--set-variable|\
|
|
-i|--sleep|--ssl-ca|--ssl-cert|--ssl-cipher|--ssl-key|-w|--wait|\
|
|
--connect_timeout|--shutdown_timeout)
|
|
# Argument required but no completions available
|
|
return 0
|
|
;;
|
|
'-?'|--help|-V|--version)
|
|
# All other options are noop with these
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
$split && return 0
|
|
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
|
|
|
|
COMPREPLY+=( \
|
|
$( compgen -W 'create debug drop extended-status flush-hosts \
|
|
flush-logs flush-status flush-tables flush-threads flush-privileges \
|
|
kill password old-password ping processlist reload refresh shutdown \
|
|
status start-slave stop-slave variables version' -- "$cur" ) )
|
|
|
|
[[ $COMPREPLY == *= ]] && compopt -o nospace
|
|
} &&
|
|
complete -F _mysqladmin mysqladmin
|
|
|
|
# Local variables:
|
|
# mode: shell-script
|
|
# sh-basic-offset: 4
|
|
# sh-indent-comment: t
|
|
# indent-tabs-mode: nil
|
|
# End:
|
|
# ex: ts=4 sw=4 et filetype=sh
|