Назад | Перейти на главную страницу

Как я могу указать сервер, который будет использоваться для почтовой команды

Я работаю над заданием crontab, которое запускает сценарий, который ищет в определенном каталоге наличие файла. Если файл не существует, он закрывается. Однако, если файл существует, он отправляет электронное письмо с помощью команды mail.

Но поскольку это более безопасная система, серверы электронной почты не настроены, поэтому у меня есть только командная строка почты, и я не могу устанавливать другое программное обеспечение в системе. Как я могу указать, какой сервер использовать из командной строки почты.

Я собирался сказать «ты не можешь», но, видимо, можешь. mailx, который установлен как mail команда в большинстве современных UNICES, говорит на странице руководства, что вы можете установить переменную:

Обычно mailx вызывает sendmail (8) напрямую для передачи сообщений. Если установлена ​​переменная smtp, вместо нее используется SMTP-соединение с сервером, указанным значением этой переменной. Если SMTP-сервер не использует стандартный порт, можно указать значение server: port, с портом в качестве имени или числа.

Проверить man страницу для вашей почтовой команды о том, как это установить.