ACC SHELL
#compdef coreadm
_coreadm() {
local -a content option
content=(
"anon[Anonymous private mappings]"
"ctf[CTF type information]"
"data[Writable private file mappings]"
"dism[DISM mappings]"
"heap[Process heap]"
"ism[ISM mappings]"
"rodata[Read-only private file mappings]"
"shanon[Anonymous shared mappings]"
"shfile[File-backed shared mappings]"
"shm[System V shared memory]"
"stack[Process stack]"
"symtab[Symbol table sections for loaded files]"
"text[Readable and executable private file mappings]"
)
option=(
"global"\:"Allow global core dumps"
"global-setid"\:"Allow set-id global core dumps"
"log"\:"Generate a syslog message on global core dump"
"process"\:"Allow per-process core dumps"
"proc-setid"\:"Allow set-id per-process core dumps"
)
# _values doesn't quite work for us here -- the separator can be either
# "+" or "-"
_arguments -s \
- set1 \
'-g[Global core file name pattern]:' \
'-G[Global core file content]:content:_values -s + "content" $content' \
'-i[Per-process core file name pattern]:' \
'-I[Per-process core file content]:content:_values -s + "content" $content' \
'*-d[Disable core option]:option:(($option))' \
'*-e[Enable core option]:option:(($option))' \
- set2 \
'-p[PID-specific per-process core file name pattern]:' \
'-P[PID-specific per-process core file content]:content:_values -s + "content" $content' \
'*:pids:_pids' \
- set3 \
'-u[Update options from coreadm.conf]'
}
_coreadm "$@"
ACC SHELL 2018