lynis/extras/bash_completion.d/lynis

88 lines
2.1 KiB
Bash

# bash completion for lynis
# version 1.0.0 (22 September 2014)
# Michael Boelen <michael.boelen@cisofy.com>
# lynis(8) completion
_lynis()
{
local cur prev
# opts nodig nosig
COMPREPLY=()
_get_comp_words_by_ref cur prev
if [ $COMP_CWORD -eq 1 ]; then
# first parameter on line
case $cur in
-*)
COMPREPLY=( $( compgen -W '--help --info --version' -- "$cur" ) )
;;
*)
COMPREPLY=( $( compgen -W 'audit --help --info --version' -- "$cur" ) )
;;
esac
return 0
fi
case $prev in
audit)
COMPREPLY=( $( compgen -W 'dockerfile system ' -- "$cur" ) )
;;
show)
COMPREPLY=( $( compgen -W 'help version ' -- "$cur" ) )
;;
--auditor)
COMPREPLY=( '"Mr. Auditor"' )
return 0
;;
--check-update|--help|--info|--version)
# all other options are noop with this command
return 0
;;
--logfile)
COMPREPLY=( 'myfile.log' )
return 0
;;
--plugin-dir)
_filedir -d
return 0
;;
--profile)
COMPREPLY=( 'default.prf' )
return 0
;;
--tests)
COMPREPLY=( '"TEST-0001 TEST-0002 TEST-0003"' )
return 0
;;
--tests-from-category)
COMPREPLY=( '"performance privacy security"' )
return 0
;;
--tests-from-groups)
COMPREPLY=( '"accounting authentication"' )
return 0
;;
*)
COMPREPLY=( $( compgen -W ' \
--auditor --cronjob --debug --quick --quiet --logfile --no-colors --no-log --pentest --reverse-colors \
--tests --tests-from-category --tests-from-group --upload --verbose' -- "$cur" ) )
;;
esac
return 0
}
complete -F _lynis lynis
# 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