output=$(grep line /var/log/file); [[ -n "$output" ]] && mail -s Log email@domain.tld
Или вы можете превратить это в работу cron, а затем, если она выдаст какой-либо вывод, она отправит электронное письмо пользователям. Вы можете отредактировать файл / etc / aliases (а затем запустить команду newaliases), чтобы отправлять почту по адресу, не указанному в коробке.
Ex of cron entry (Вы не сможете установить строку темы, хотя
1 0 * * * grep line /var/log/file
Или вы можете получить утилиту ifne - это, вероятно, то, что вы хотите
grep line / var / log / file | ifne mail -s Log email@domain.tld
Команда ifne доступна в репозитории Epel для Centos и RHEL. Я не могу найти ссылку на справочную страницу в Интернете, но она есть
ifne (1)
ifne (1)
NAME ifne - Запустить команду, если стандартный ввод не пуст
SYNOPSIS ifne [-n] команда
ОПИСАНИЕ ifne выполняет следующую команду тогда и только тогда, когда стандартный ввод не пуст.
ОПЦИИ -n Обратная операция. Запустите команду, если стандартный ввод пуст.
Note that if the standard input is not empty, it is passed
through ifne in this case.
ПРИМЕР НАЙТИ. ядро | ifne mail -s "Основные файлы найдены" root
АВТОР Copyright 2008 Хавьер Мерино
Licensed under the GNU GPL
2008-05-01 ifne(1)