From b6c1913065dc3c86c3641eeb09d87fc7beca0c3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gardais=20J=C3=A9r=C3=A9my?= Date: Thu, 20 Feb 2020 16:02:05 +0100 Subject: [PATCH] Create or empty previous files and fix redirection --- xymon/plugins/client/ext/smart | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/xymon/plugins/client/ext/smart b/xymon/plugins/client/ext/smart index 0db51a4..35f4a8b 100755 --- a/xymon/plugins/client/ext/smart +++ b/xymon/plugins/client/ext/smart @@ -27,10 +27,11 @@ is_disk_support_smart() { [ "${debug}" -eq "0" ] && printf "${c_magentab}%-6b${c_reset}\n" "DEBUG : is_disk_support_smart func − check if SMART is supported on : ${_disk}." - if test -f "${_smarctl_support_result}"; then rm -f -- "${_smarctl_support_result}"; fi + ## Create or empty previous file + true > "${_smarctl_support_result}" ## Grep only "support" lines from disk's informations - smartctl -d "${_type}" -i -- "${_disk}" | grep -E "^SMART support is:" -- > "${_smarctl_support_result}" + smartctl -d "${_type}" -i -- "${_disk}" | grep -E "^SMART support is:" -- >> "${_smarctl_support_result}" ## If the file is not empty if test -s "${_smarctl_support_result}"; then @@ -80,11 +81,13 @@ choose_correct_type() { } ## }}} -if test -f /tmp/dres; then rm -f -- /tmp/dres; fi -if test -f /tmp/dscan; then rm -f -- /tmp/dscan; fi +# Create or empty previous files +true > /tmp/dres +true > /tmp/dcheck +true > /tmp/dscan # Get the list of all available devices -smartctl --scan > /tmp/dscan +smartctl --scan >> /tmp/dscan # TODO: Test if the file is not empty if test -s /tmp/dscan; then @@ -135,11 +138,11 @@ if test -s /tmp/dscan; then echo "------------------------------------------------------------" echo "" echo "" - } >>/tmp/dres - done < /tmp/dscan > /tmp/dcheck + } >> /tmp/dres + done < /tmp/dscan >> /tmp/dcheck else - echo "1&red Error while scanning devices with smartctl" > /tmp/dcheck + echo "1&red Error while scanning devices with smartctl" >> /tmp/dcheck fi # Set the global color according to the highest alert