From 5d4338b309b1a88d9efd4fc1703b04424973c948 Mon Sep 17 00:00:00 2001 From: Jim Klimov Date: Thu, 1 Aug 2024 12:16:33 +0200 Subject: [PATCH] scripts/upsdrvsvcctl/upsdrvsvcctl.in: adjust SVC_NAME_WIDTH to framework type too [#2567] Signed-off-by: Jim Klimov --- scripts/upsdrvsvcctl/upsdrvsvcctl.in | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/upsdrvsvcctl/upsdrvsvcctl.in b/scripts/upsdrvsvcctl/upsdrvsvcctl.in index 8a70fe34d2..5079b764a7 100755 --- a/scripts/upsdrvsvcctl/upsdrvsvcctl.in +++ b/scripts/upsdrvsvcctl/upsdrvsvcctl.in @@ -161,16 +161,18 @@ while [ $# -gt 0 ]; do # Use a common approach below, even if we only got one instance name from list() if [ -n "$2" ] && [ -n "${SVCINSTS}" ] ; then SVCINSTS="${SVCINSTS} $2" ; fi + # Accomodate svc:/system/power/nut-driver:dummy (SMF) + # or nut-driver@dummy.service (systemd) case "$SERVICE_FRAMEWORK" in - smf) SVC_STATE_WIDTH="11" ;; - systemd) SVC_STATE_WIDTH="23" ;; + smf) SVC_NAME_WIDTH="39" ; SVC_STATE_WIDTH="11" ;; + systemd) SVC_NAME_WIDTH="30" ; SVC_STATE_WIDTH="23" ;; esac echo "$STATUSES" | ( COUNT=0; while IFS='' read LINE ; do COUNT="`expr $COUNT + 1`" if [ "$COUNT" = 1 ] ; then # Header line - printf '%-30s\t%'"${SVC_STATE_WIDTH}"'s\t%s\n' "SVC_NAME" "SVC_STATE" "$LINE" + printf '%-'"${SVC_NAME_WIDTH}"'s\t%'"${SVC_STATE_WIDTH}"'s\t%s\n' "SVC_NAME" "SVC_STATE" "$LINE" continue fi DEV_NAME="`echo "$LINE" | awk '{print $1}'`" @@ -224,7 +226,7 @@ while [ $# -gt 0 ]; do ;; esac fi - printf '%-30s\t%'"${SVC_STATE_WIDTH}"'s\t%s\n' "$SVC_NAME" "$SVC_STATE" "$LINE" + printf '%-'"${SVC_NAME_WIDTH}"'s\t%'"${SVC_STATE_WIDTH}"'s\t%s\n' "$SVC_NAME" "$SVC_STATE" "$LINE" done ) exit $RES ;;