X-Git-Url: https://arthur.barton.de/gitweb/?p=trigger-rcmd.git;a=blobdiff_plain;f=scripts%2Ftrigger-rcmd;fp=scripts%2Ftrigger-rcmd;h=9ef9ad81e17b3f9c62bdc08dbc3d8a0abacd8f60;hp=55df7388492355dbcd38e194194298281d2de408;hb=6bd8ced76b2db732ce380f6ce471e5c9cc1bf2a0;hpb=8ef4954fc0372206f7d6ee8a3efbe07cb7de708f diff --git a/scripts/trigger-rcmd b/scripts/trigger-rcmd index 55df738..9ef9ad8 100755 --- a/scripts/trigger-rcmd +++ b/scripts/trigger-rcmd @@ -1,7 +1,7 @@ #!/bin/sh # # trigger-rcmp: Trigger remote commands -# Copyright (c)2014-2017 Alexander Barton (alex@barton.de) +# Copyright (c)2014-2020 Alexander Barton (alex@barton.de) # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -41,27 +41,23 @@ do_rcmd() { fi echo "$NAME: Checking system \"$SYSTEM\" ..." - fping -c1 -q "$SYSTEM" 2>/dev/null - if [ $? -ne 0 ]; then + if ! fping -c1 -q "$SYSTEM" 2>/dev/null; then if [ -n "$NO_WAKE" ]; then echo "$NAME: \"$SYSTEM\" seems to be down, skipping job." return 9 fi echo "$NAME: \"$SYSTEM\" seems to be down, wake it up ..." - etherwake -b -i "$IFACE" "$(echo "$SYSTEM" | cut -d'.' -f1)" - if [ $? -ne 0 ]; then + if ! etherwake -b -i "$IFACE" "$(echo "$SYSTEM" | cut -d'.' -f1)"; then echo "$NAME: Failed to wake \"$SYSTEM\"!" >&2 return 3 fi echo "$NAME: Waiting for \"$SYSTEM\" to respond ..." for i in $(seq 1 $TIMEOUT); do - fping -c1 -q "$SYSTEM" 2>/dev/null - [ $? -ne 0 ] || break + fping -c1 -q "$SYSTEM" 2>/dev/null && break sleep 1s done - fping -c1 -q "$SYSTEM" 2>/dev/null - if [ $? -ne 0 ]; then + if ! fping -c1 -q "$SYSTEM" 2>/dev/null; then echo "$NAME: Failed to wake \"$SYSTEM\"!" >&2 return 4 fi @@ -102,8 +98,7 @@ do_rcmd() { if [ "$rsys_users" = "0" ]; then echo "$NAME: Power off \"$SYSTEM\" again ..." # shellcheck disable=2029 - ssh -o PreferredAuthentications=publickey -q "$SYSTEM" "sync; shutdown -hP $SHUTDOWN_TIME" 2>&1 >/dev/null - if [ $? -ne 0 ]; then + if ! ssh -o PreferredAuthentications=publickey -q "$SYSTEM" "sync; shutdown -hP $SHUTDOWN_TIME" >/dev/null 2>&1; then echo "$NAME: Failed to power off \"$SYSTEM\"!" >&2 return 5 fi