_rkhunter() { local cur prev opts COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} opts="--append-log --bindir -c --check --cs2 --color-set2 --configfile \ --cronjob --dbdir --debug --disable --display-logfile --enable \ --hash -h --help --lang --language --list -l --logfile --noappend-log \ --nocolors --nolog --nomow --no-mail-on-warning --ns --nosummary \ --novl --no-verbose-logging --pkgmgr --propupd -q --quiet \ --rwo --report-warnings-only -r --rootdir --sk --skip-keypress \ --summary --syslog --tmpdir --update --vl --verbose-logging \ -V --version --versioncheck -x --autox -X --no-autox" if [[ "${cur}" == -* ]] || [[ ${COMP_CWORD} -eq 1 ]]; then COMPREPLY=($(compgen -W "${opts}" -- "${cur}")) fi case "${prev}" in --display-logfile) COMPREPLY=($(compgen -W "${opts/--display-logfile}" -- "${cur}")) ;; --*dir) COMPREPLY=($(compgen -o dirnames -A directory -- "${cur}")) ;; --*file) COMPREPLY=($(compgen -o filenames -A file -- "${cur}")) ;; --append-log) COMPREPLY=($(compgen -W "${opts/--append-log}" -- "${cur}")) ;; -c|--check) COMPREPLY=($(compgen -W "${opts/-c --check}" -- "${cur}")) ;; --cs2|--color-set2) COMPREPLY=($(compgen -W "${opts/--cs2 --color-set2}" -- "${cur}")) ;; --cronjob) COMPREPLY=($(compgen -W "${opts/--cronjob}" -- "${cur}")) ;; --debug) COMPREPLY=($(compgen -W "${opts/--debug}" -- "${cur}")) ;; --disable) COMPREPLY=($(compgen -W "${opts/--disable}" -- "${cur}")) ;; --enable) COMPREPLY=($(compgen -W "${opts/--enable}" -- "${cur}")) ;; --hash) COMPREPLY=($(compgen -W "MD5 SHA1 NONE" -- "${cur}")) ;; -h|--help) COMPREPLY=($(compgen -W "${opts/-h --help}" -- "${cur}")) ;; --lang|--language) COMPREPLY=($(compgen -W "${opts/--lang --language}" -- "${cur}")) ;; --list) COMPREPLY=($(compgen -W "tests languages rootkits" -- "${cur}")) ;; -l|--logfile) COMPREPLY=($(compgen -o filenames -A file -- "${cur}")) ;; --noappend-log) COMPREPLY=($(compgen -W "${opts/--noappend-log}" -- "${cur}")) ;; --nocolors) COMPREPLY=($(compgen -W "${opts/--nocolors}" -- "${cur}")) ;; --nolog) COMPREPLY=($(compgen -W "${opts/--nolog}" -- "${cur}")) ;; --nomow|--no-mail-on-warning) COMPREPLY=($(compgen -W "${opts/--nomow --no-mail-on-warning}" -- "${cur}")) ;; --ns|--nosummary) COMPREPLY=($(compgen -W "${opts/--ns --nosummary}" -- "${cur}")) ;; --novl|--no-verbose-logging) COMPREPLY=($(compgen -W "${opts/--novl --no-verbose-logging}" -- "${cur}")) ;; --pkgmgr) COMPREPLY=($(compgen -W "RPM DPKG BSD NONE" -- "${cur}")) ;; --propupd) COMPREPLY=($(compgen -W "${opts/--propupd}" -- "${cur}")) ;; -q|--quiet) COMPREPLY=($(compgen -W "${opts/-q --quiet}" -- "${cur}")) ;; --rwo|--report-warnings-only) COMPREPLY=($(compgen -W "${opts/--rwo --report-warnings-only}" -- "${cur}")) ;; --sk|--skip-keypress) COMPREPLY=($(compgen -W "${opts/--sk --skip-keypress}" -- "${cur}")) ;; --summary) COMPREPLY=($(compgen -W "${opts/--summary}" -- "${cur}")) ;; --syslog) COMPREPLY=($(compgen -W "${opts/--syslog}" -- "${cur}")) ;; --update) COMPREPLY=($(compgen -W "${opts/--update}" -- "${cur}")) ;; --vl|--verbose-logging) COMPREPLY=($(compgen -W "${opts/--vl --verbose-logging}" -- "${cur}")) ;; -V|--version) COMPREPLY=($(compgen -W "${opts/-V --version}" -- "${cur}")) ;; --versioncheck) COMPREPLY=($(compgen -W "${opts/--versioncheck}" -- "${cur}")) ;; -x|--autox) COMPREPLY=($(compgen -W "${opts/-x --autox}" -- "${cur}")) ;; -X|--no-autox) COMPREPLY=($(compgen -W "${opts/-X --no-autox}" -- "${cur}")) ;; esac } complete -F _rkhunter rkhunter