output=$(grep line /var/log/file); [[ -n "$output" ]] && mail -s Log email@domain.tld
Або ви можете перетворити це на роботу cron, і тоді, якщо він видасть будь-який вихід, він надішле електронну пошту користувачам. Ви можете відредагувати файл / etc / aliases (а потім виконати команду newaliases), щоб надіслати пошту на адресу, яка не знаходиться у полі.
Наприклад, запис про хрон (Ви не зможете встановити сюжетну лінію
1 0 * * * grep line /var/log/file
Або ви можете отримати утиліту ifne - це, мабуть, те, що ви хочете
рядок grep / var / log / file | ifne mail -s Увійдіть email@domain.tld
Команда ifne використовує його з epel repo для 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 Javier Merino
Licensed under the GNU GPL
2008-05-01 ifne(1)