ГлавнаяОперационные системыLinuxПусть Linux отправит вам уведомление по электронной почте после завершения задачи

Пусть Linux отправит вам уведомление по электронной почте после завершения задачи

В этой статье мы рассмотрим, как заставить Linux отправлять оповещения по электронной почте при выполнении определенного условия. Мы предполагаем, что вы являетесь пользователем среднего или продвинутого уровня (которым вы и должны быть, если хотите настроить оповещения по электронной почте в Linux) и что у вас уже установлен почтовый клиент.

Отправка оповещений по электронной почте может быть очень полезной. Например, если в фоновом режиме выполняется большая сборка, нет смысла ждать завершения процесса. В таких случаях вы можете попросить Linux отправить вам сообщение после завершения сборки. Это экономит вам много времени. Вы также можете получить уведомление по электронной почте в определенное время. Если у вас запланировано вечернее мероприятие, вы можете запрограммировать его в Linux, чтобы не забыть!

Для начала давайте кратко рассмотрим, как можно отправить электронное письмо самому себе. Команда для него — «mailx» или «mail». Эта команда может отличаться в вашей системе, в зависимости от версии Linux, которую вы используете (и она будет работать только в том случае, если сервер настроен правильно). Синтаксис команды:

mailx -s "your subject" recipient@provider.com <<< "your message"

При желании вы также можете прикрепить к этому файл

mailx -s "your subject" recipient@provider.com < filename.txt

Электронная почтаAlert1

Также читайте: 9 лучших почтовых клиентов для Linux

Как заставить Linux отправлять оповещения по электронной почте

Теперь мы можем связать использованную выше команду с условным оператором. Это означает, что когда условие будет выполнено, вам будет отправлено электронное письмо. Введите в командной строке следующее:

condition_when_done date | mailx -s "subject" youremail@provider.com <<< "your message"

Это можно сделать и другим способом. Давайте посмотрим на другой пример. Что, если вы ждете ответа от сервера? Вы можете либо продолжать вводить команды в оболочке, либо получать оповещение по электронной почте, когда сервер просыпается. Вы можете использовать эту команду, например:

while :; do date; ping -c1 servername && break; \done; mail

Если присмотреться, приведенный выше код представляет собой бесконечный цикл. Когда ваша система проверяет связь с сервером (имя_сервера), цикл прерывается, и вам будет отправлено письмо. Вам не нужно ждать, пока сервер загрузится или обновится.

Если вас беспокоит расход системных ресурсов, вы можете перевести систему в спящий режим, немного изменив команду:

while :; do date; ping -c1 servername && break; sleep 200; \done; mail

В этом случае компьютер будет спать 200 секунд, прежде чем выполнит новый цикл. Таким образом, вы также будете получать регулярное оповещение (о том, что цикл работает) каждые несколько секунд.

В качестве условия можно использовать практически любую команду оболочки (при условии, что она разумна и не перегружает вашу систему):

while :; do date; the_command_to_be_executed && break; \done; mail

Что, если вы хотите отправить себе электронное письмо в определенный день и в определенное время? Вы можете немного изменить команду выше:

while [ date +"%T" -gt '06:00:00']; do date; the_command_to_be_executed && break; \done; mail

Если вы хотите получать уведомления всякий раз, когда получаете электронное письмо в вашей системе Linux, вы можете установить приложения, поддерживающие уведомления по электронной почте. Двумя наиболее популярными приложениями являются PopTray Минус и Почтовое уведомление .

Вы можете поэкспериментировать с приведенными выше командами. Идея проста: просто создайте условие, при выполнении которого будет отправлено оповещение по электронной почте. Если вам нужна дополнительная информация или помощь по использованию mailx, просто введите «mailx --help», чтобы отобразить список справки.

Изображение предоставлено: флаг смокинг Linux пингвин красный размахивая , серый почтовый конверт белое почтовое письмо , напоминание о памяти, напоминание, контроль размеров

ПОХОЖИЕ СТАТЬИ

Популярные записи