mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-19 21:44:11 +01:00
34 lines
920 B
Plaintext
34 lines
920 B
Plaintext
#compdef chkconfig
|
|
|
|
local curcontext="$curcontext" state line ret=1
|
|
|
|
case $OSTYPE in
|
|
linux*)
|
|
_arguments -C \
|
|
'(- 2)--list[list services]' \
|
|
'(-)--level[specify runlevels to apply to]:-:_values -s "" "run levels" 1 2 3 4 5 6 7' \
|
|
'(- 2)--add[add new service]' \
|
|
'(- 2)--del[remove service from chkconfig management]' \
|
|
'1:service name:->services' \
|
|
'2:state:(on off reset)' && ret=0
|
|
|
|
if [[ -n "$state" ]]; then
|
|
_wanted services expl 'system service' \
|
|
compadd ${${${(f)"$($words[1] --list)"}%%[ :]*}##$'\t'*} && ret=0
|
|
fi
|
|
;;
|
|
irix*)
|
|
_arguments -C \
|
|
'(- 1)-s[print state of configuration flags]' \
|
|
'(1 -s)-f[set flag state]:configuration flag:->flag:state:(on off)' \
|
|
'1:configuration flag:->flag' && ret=0
|
|
|
|
if [[ -n "$state" ]]; then
|
|
_wanted conf-flags expl 'configuration flag' \
|
|
compadd ${${${(f)"$($words[1])"}[4,-1]##$'\t'}%% *} && ret=0
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
return ret
|