Первая проблема заключается в том, что mail
- это общее название для нескольких разных программ (в зависимости от ОС и дистрибутива), а иногда mail
- это символическая ссылка на какую-то другую программу (например, mailx). В результате будет трудно решить проблему, не имея подробных сведений о программе, которую вы используете, и которая называется mail
. Это, в свою очередь, может сделать (полу) переносимость сценариев реальной вещью (даже между хостами в одном домене). По этим причинам я склонен использовать sendmail
, когда мне нужно выполнить специальное форматирование в теле письма.
Вторая проблема заключается в том, что большинство mail
программ должны быть проинструктированы для интерпретации (html)теги. Обычно это включает добавление (вверху письма) пунктов MIME-VERSION: 1.0
и Content-Type: text/html
.
Один простой пример, который вы можете начать с:
body="Dear $user,
<p> The password for your account is due to expire on in 14 days. and must be changed.<br>
<p>You can reset your password by visiting the Password Reset Portal.</p>
<p><a href=\"https://google.com/\">Google</a> </p>
<p>You can contact the XYZ Team in case of any issue. </p>"
email="abc@gmail.co."
from="xyz@gmail.com"
echo "Subject: My test subject
To: ${email}
From: ${from}
MIME-Version: 1.0
Content-type: text/html
<html><body>
${body}
</body></html>" | /usr/sbin/sendmail -t
ПРИМЕЧАНИЕ. Проверьте путьна вашем хосте для sendmail
.
ПРИМЕЧАНИЕ. Если у вас не установлен sendmail
, то это целая «вторая запись», так как сисадмину потребуется настроить файл конфигурации, чтобы сообщить sendmail
, какобрабатывать (e) почтовые сообщения (например, как называется сервер smtp?).
С помощью этой простой оболочки вы сможете добавлять дополнительные HTML-теги по мере необходимости.