sv-manage: add service listing

This commit is contained in:
crater2150 2024-07-15 12:27:39 +02:00
parent c79950ce02
commit 6a8412428b

View file

@ -62,19 +62,32 @@ sv() {
} }
sv-manage() { sv-manage() {
action=$1 local action service svdir
shift zparseopts -D -E d:=dir -dir:=dir
svdir=${dir[2]:-${SVDIR:-/var/service}}
if [[ -z $1 ]]; then
action=list
else
action=$1
shift
fi
case "$action" in case "$action" in
add) add)
for service in "$@"; do for service in "$@"; do
ln -s ${SVDIR_TEMPLATES:-/etc/sv}/${service:s#/##} ${SVDIR:-/var/service} ln -s ${SVDIR_TEMPLATES:-/etc/sv}/${service:s#/##} ${svdir}
done done
;; ;;
remove|rm) remove|rm)
for service in "$@"; do for service in "$@"; do
rm ${SVDIR:-/var/service}/${service:s#/##} rm ${svdir}/${service:s#/##}
done done
;; ;;
list|ls)
sv status ${svdir}/* | sed "
s@${svdir}/@@
s@run@\x1b[1;92mrun\x1b[0m@g
s@down@\x1b[1;31mdown\x1b[0m@g
" | column -t
esac esac
} }