51 lines
1.2 KiB
Plaintext
Raw Normal View History

# usermod(8) completion
_usermod()
{
local cur prev words cword split
_init_completion -s || return
# TODO: if -o/--non-unique is given, could complete on existing uids
# with -u/--uid
case $prev in
-c|--comment|-d|--home|-e|--expiredate|-f|--inactive|-h|--help|\
-l|--login|-p|--password|-u|--uid|-Z|--selinux-user)
return 0
;;
-g|--gid)
_gids
COMPREPLY=( $( compgen -W '${COMPREPLY[@]} $( compgen -g )' \
-- "$cur" ) )
return 0
;;
-G|--groups)
COMPREPLY=( $( compgen -g -- "$cur" ) )
return 0
;;
-s|--shell)
_shells
return 0
;;
esac
$split && return 0
if [[ "$cur" == -* ]]; then
# TODO: -U/--unlock, -p/--password, -L/--lock mutually exclusive
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
return 0
fi
COMPREPLY=( $( compgen -u -- "$cur" ) )
} &&
complete -F _usermod usermod
# 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