bash
не может работать с плавающей запятой. Используйте zsh
, ksh93
или yash
вместо :
#! /bin/zsh -
read ignore load ignore < /proc/loadavg || exit
if ((load > 5)); then
echo >&2 Alert
fi
Или поскольку вы уже используете awk
(вместе с несколькими ненужными командами):
#! /bin/sh -
awk '$2 > 5 {print "Alert"}' < /proc/loadavg >&2
Или, если вам это нужно в конструкцииsh
if
:
#! /bin/sh -
if awk '{exit !($2 > 5)}' < /proc/loadavg; then
echo >&2 Alert
fi