blob: 670aed05b1031ed8eb2f3f8852e1c1ee6efbead5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#autoload
local -a inits xinetds alls
local expl ret=1
if chkconfig --list > /dev/null 2>&1; then
alls=( ${(f)"$(LANGUAGE=C LANG=C LC_ALL=C chkconfig --list)"} )
inits=( ${${${alls[1,(r)xinetd based*]}[1,-2]}/%[[:space:]]*/} )
xinetds=( ${${${${alls[(r)xinetd based*,-1]}[2,-1]}/#[[:space:]]#}/%:*} )
else
inits=( /etc/init.d/*(:t) )
fi
_tags init xinetd
while _tags; do
_requested init expl 'init services' \
compadd -a inits && ret=0
_requested xinetd expl 'xinetd services' \
compadd -a xinetds && ret=0
(( ret )) || break
done
return $ret
|