html - 如何使用 sendmail 在 HTML 中显示嵌入的图像?
问题描述
我正在尝试通过 shell 脚本使用 sendmail 发送 HTML 邮件。HTML 邮件正在按需要发送,但图像未显示。我已经通过使用 sendmail -t <<EOT 发送 html 检查了多个线程,但它不适用于我并且发送的邮件是空白的。有人可以支持吗?
(
echo "From: ABC@host.com"
echo "To: DEF@host.com"
echo "Subject: HTML Test"
echo "MIME-Version: 1.0"
echo "Content-Type: multipart/related;boundary=\"XYZ\""
echo "Content-Disposition: inline"
echo "--XYZ"
echo "Content-Type: text/html; charset=ISO-8859-15"
echo "Content-Transfer-Encoding: 7bit"
cat $CONTENT
echo "--XYZ"
echo "Content-Type: image/jpeg;name=\"Logo.jpg\""
echo "Content-Transfer-Encoding: base64"
echo "Content-ID: <part1.06090408.01060107>"
echo "Content-Disposition: inline; filename=\"Logo.jpg\""
echo "$(base64 Logo.jpg)"
echo "--XYZ--"
) | /usr/sbin/sendmail -t
另一种方法,但发送空白邮件。变量 Display_HTML 中的问题,它似乎没有正确获取 html 文件的内容。
export CONTENT="myfile.htm"
Display_HTML= cat "$CONTENT"
sendmail -t <<EOT
TO:$MAILTO
FROM:$MAILFROM
SUBJECT:$SUBJECT
MIME-Version: 1.0
Content-Type: multipart/related;boundary="XYZ"
--XYZ
Content-Type: text/html; charset=windows-1252
$Display_HTML
--XYZ
Content-Type: image/jpeg;name="Logo.jpg"
Content-Transfer-Encoding: base64
Content-ID: <part1.06090408.01060107>
Content-Disposition: inline; filename="Logo.jpg"
$(base64 Logo.jpg)
--XYZ--
EOT
解决方案
推荐阅读
- jenkins - 在 servicenow 更改请求批准后使用 jenkins 构建促销
- python - 我无法在我的主蜘蛛文件中导入 items.py 文件[scrapy]
- react-native-navigation - 有什么办法可以关闭覆盖
- javascript - 来自 LocalDatastore 中的 Parse 中具有本地 ID 的对象不会更新
- php - 如何通过 Laravel 中的 hasMany 关系过滤条目
- vb.net - 如何在 vb.net 的 word 文档中指定插入点?
- r - 替换列中的值
- c++ - 使用 VB 示例与 SerialCOM 进行 C++ 字符串 ASCII 通信
- kubernetes - GKE 节点意外删除并重新创建
- ruby-on-rails - 带有 RSpec 测试的 Capybara 上的 ActionController::InvalidAuthenticityToken