Intereting Posts

Стандартный и переносимый способ отправки электронной почты с консоли?

Каков наиболее переносимый или стандартный способ отправки электронной почты с консоли или скрипта в Linux и, возможно, в Unix?

Для этого вы можете использовать команду mailx . Ниже приведен пример использования:

 mailx -v -s "Subject" -S smtp-use-starttls -S ssl-verify=ignore -S smtp-auth=login -S smtp=smtp://<server_name>:25 -S from="email@domain.com" -S smtp-auth-user=<username> \ -S smtp-auth-password=<password> email@domain.com 

В этом примере используется SSL и SMTP-аутентификация.

Если вы хотите переносить, как в стандарте, используйте mailx . Команды mail и Mail являются общими, но не стандартными и могут иметь очень разные параметры в Unix-системах (в том числе и в установках одного и того же дистрибутива Linux). Стандартизированы только несколько вариантов mailx ; например, если вам нужны пользовательские заголовки, вам не повезло.

Обратите внимание, что это работает только в том случае, если настроена почтовая система unix (должна быть хотя бы команда sendmail настроенная для разговора с локальной или удаленной MTA). Обычно это можно предполагать на серверах с компетентными администраторами. На настольных компьютерах электронная почта обычно настраивается пользователем в каждом почтовом клиенте.

Если вы предположите, что машина правильно настроила sendmail, вы можете просто использовать

mailx -s Subject recipent@somewhere.org < myemail.txt

Он более и менее переносимый, чем другой ответ. С одной стороны, sendmail должен быть настроен на машине. С другой стороны, если он настроен, тогда будут использоваться правильные настройки вместо некоторых произвольных.

EDIT: изменить mail на стандартный mailx .