Я отслеживаю файл журнала для ключевого слова, которое вызовет электронную почту.Проблема в том, что код генерирует электронную почту бесконечно.Я хотел бы получить только одно электронное письмо, даже если есть несколько строк с одним и тем же ключевым словом.
Я попробовал следующее:
'{if(!seen[$1]++)print $1}'
, но я не знаю, как и ГДЕпримените его к существующему коду:
tail -fn0 user | awk '/disconnect_tcp_conn/ {
system("mail -s \"Server is down\" mail@gmail.com </dev/null")
print "Server is Down"
Желаемый результат - либо завершить все электронные письма после первого отправленного электронного письма, либо завершить электронную почту и мониторинг после того, как первое электронное письмо было отправлено.Я предпочитаю только завершить операцию по электронной почте и продолжить мониторинг, но буду только завершать все.