Самый быстрый способ найти строки, начинающиеся со строки в файле gzip

В команде ifвы должны заключать переменные в двойные кавычки. И проверьте, присвоено ли этим переменным что-то:

 if [ "${chk}" -gt "${threshold}" ]; then

Для отправки почты вы можете использовать команду echoследующим образом

echo "$(hostname): Alert Fileystem ${fs} is above ${threshold}%."|mail user@host

Если вам нужна одна почта для всех, вы можете использовать что-то вроде:

>/tmp/output
for fs in $(df -hk | awk '{print $6}' | sed '1 d'); do
chk=$(df -hk ${fs} | sed '1 d' | awk '{print $5}' | awk -F\% '{print $1}')
if [ "${chk}" -gt "${threshold}" ]; then
  echo "$(hostname): Alert Fileystem ${fs} is above ${threshold}%." >>/tmp/output
fi
done
cat /tmp/output|mailx -s "Subject" username@host

EDIT1 :И еще один момент, команда df -hkнемного ерунда, вы хотите в то же время результат в удобочитаемом формате ('h' )и быть в килобайтах (' к')

3
22.08.2021, 16:29
0 ответов

Теги

Похожие вопросы