Я запускаю задание cron, где есть вывод в формате html. Я хочу отправить этот вывод на свой адрес электронной почты в формате html.
Есть ли способ сделать это
php /home/bla/bla_bla.php | mail -s "Bla Bla" -s "bla@bla.com"
Добавьте заголовок Content-Type, например -a 'Content-Type: text/html; charset="iso-8859-1"'
или используйте почтовый клиент, который угадывает Content-Type (например, GNU mailutils, вероятно, это делает).
Вы можете взглянуть на пантомима. Это удобно для таких вещей. Я использую его для отправки сгенерированного HTML-документа как части ежедневного задания cron, например:
/usr/bin/mime-construct --to "foo@bar.com" --subject "My daily html foo" --multipart multipart/alternative --type text/html --file htmlfiletosend.html
Если вам не важно, чтобы сообщения были составными, вы можете отбросить эту часть. Он также может принимать html через стандартный ввод, например:
php your_script.php | mime-construct --to "foo@bar.com" --subject "Foo Report" --type text/html --file -
Я не знаю, какой дистрибутив вы используете, но он доступен в основных репозиториях для Debian и Ubuntu, я полагаю, что у RHEL и его производных тоже есть.