чување 831f2837b9907211e539f60813016394218fc95c родитељ 83a2bda17bb74f79d1ef607060cd2a7e4963bf3f Аутор: Страхиња Радић <contact@strahinja.org> Датум: Thu, 21 Jul 2022 22:45:26 +0200 Fix calling "service" with no service name given Signed-off-by: Страхиња Радић <contact@strahinja.org> Diffstat:
| M | bin/service | | | 74 | +++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------- |
измењених датотека: 1, додавања: 53(+), брисања: 21(-)
diff --git a/bin/service b/bin/service @@ -35,11 +35,6 @@ fi cmd="$1" service="$2" -seterrno() -{ - return $1 -} - doservice() { local cmd=$1 service=$2 exists=0 nooutcome=0 errno stop=0 @@ -54,24 +49,61 @@ doservice() msg serv "Service %s activated?\t\t\t" ${service##*/} svc -ad "${service}" 2>/dev/null fi;; - a*) msg serv "Activating %s\t\t\t" ${service##*/} - svc -a "${service}" 2>/dev/null;; - d*) msg serv "Deactivating %s\t\t\t" ${service##*/} - svc -d "${service}" 2>/dev/null;; - e*) msg serv "Exists %s?\t\t\t" ${service##*/} - exists=1 - svc -e "${service}" 2>/dev/null;; + a*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + msg serv "Activating %s\t\t\t" ${service##*/} + svc -a "${service}" 2>/dev/null + fi;; + d*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + msg serv "Deactivating %s\t\t\t" ${service##*/} + svc -d "${service}" 2>/dev/null + fi;; + e*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + msg serv "Exists %s?\t\t\t" ${service##*/} + exists=1 + svc -e "${service}" 2>/dev/null + fi;; l*) nooutcome=1 svc -l;; - sta*) msg serv "Starting %s\t\t\t" ${service##*/} - svc -s "${service}" 2>/dev/null;; - sto*) stop=1 - msg serv "Stopping %s\t\t\t" ${service##*/} - svc -k "${service}" 2>/dev/null;; - r*) msg serv "Restarting %s\t\t\t" ${service##*/} - svc -r "${service}" 2>/dev/null;; - *) msg serv "What to do with %s?\t\t\t" ${service##*/} - seterrno 3;; + sta*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + msg serv "Starting %s\t\t\t" ${service##*/} + svc -s "${service}" 2>/dev/null + fi;; + sto*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + stop=1 + msg serv "Stopping %s\t\t\t" ${service##*/} + svc -k "${service}" 2>/dev/null + fi;; + r*) if [ $# -lt 2 ]; then + nooutcome=1 + msg err "No service given" + exit 2 + else + msg serv "Restarting %s\t\t\t" ${service##*/} + svc -r "${service}" 2>/dev/null + fi;; + *) nooutcome=1 + msg err "What to do with %s?" ${service##*/} + exit 3;; esac errno=$? if [ "${nooutcome}" -eq 1 ]; then