svc

Управљање сервисима
Дневник | Датотеке | Референце | ПРОЧИТАЈМЕ | ЛИЦЕНЦА

чување 2e0f60d63d21bb975d3c8b63f467d10ccd5fca68
родитељ 3540a9d4faf758487856821b2c9db3440d0e6a1d
Аутор: Страхиња Радић <contact@strahinja.org>
Датум:   Wed,  3 May 2023 17:16:39 +0200

bin/service(msgtabs): New function; take into account the whole message when
calculating the number of tabs

Signed-off-by: Страхиња Радић <contact@strahinja.org>

Diffstat:
Mbin/service | 41+++++++++++++++++++++++++++++++----------
измењених датотека: 1, додавања: 31(+), брисања: 10(-)

diff --git a/bin/service b/bin/service @@ -36,25 +36,46 @@ fi cmd="$1" service="$2" +msgtabs() +{ + local kind fmt + + kind=$1 + shift + fmt=$1 + shift + + message=$(printf "${fmt}" "$@") + lenmessage=${#message} + # 13 = length of "=I= 00:00:00 " + if [ $((13 + lenmessage)) -le 24 ]; then + tabs="\t\t\t\t" + elif [ $((13 + lenmessage)) -le 32 ]; then + tabs="\t\t\t" + elif [ $((13 + lenmessage)) -le 40 ]; then + tabs="\t\t" + elif [ $((13 + lenmessage)) -le 48 ]; then + tabs="\t" + else + tabs=" " + fi + + msg "${kind}" "${fmt}${tabs}" "$@" +} + doservice() { local cmd=$1 service=$2 running=0 nooutcome=0 errno stop=${stop:-0} local activated=0 sname=${service##*/} - tabs="\t" - if [ ${#sname} -lt 8 ]; then - tabs="${tabs}\t\t" - elif [ ${#sname} -lt 16 ]; then - tabs="${tabs}\t" - fi case "${cmd}" in a*d) activated=1 if [ "${service}" = "all" ] || [ -z "${service}" ]; then nooutcome=1 svc -a 2>/dev/null else - msg serv "Service %s activated?${tabs}" ${sname} + msgtabs serv "Service %s activated?" ${sname} svc -ad "${service}" 2>/dev/null fi;; a*) if [ -z "${service}" ]; then @@ -62,7 +83,7 @@ doservice() msg err "No service given" exit 2 else - msg serv "Activating %s${tabs}" ${sname} + msgtabs serv "Activating %s" ${sname} svc -a "${service}" 2>/dev/null fi;; d*) if [ -z "${service}" ]; then @@ -70,7 +91,7 @@ doservice() msg err "No service given" exit 2 else - msg serv "Deactivating %s${tabs}" ${sname} + msgtabs serv "Deactivating %s" ${sname} svc -d "${service}" 2>/dev/null fi;; l*) nooutcome=1 @@ -105,7 +126,7 @@ doservice() msg err "No service given" exit 2 else - msg serv "%s running?${tabs}" ${sname} + msgtabs serv "%s running?" ${sname} running=1 svc -e "${service}" 2>/dev/null fi;;