如何在 Bash 中通过 Amazon SES 发送电子邮件 ?

Amazon SES (Simple Email Service) 是一个流行的 SMTP 服务提供商,类似于 Sendgrid, Mailchimp 等。为了使用 SES,您需要注册一个 Amazon Web Services 帐户,SES 允许每天免费发送 2000 封邮件。

本文中,您将学习通过 Amazon SES 或其他 SMTP 提供商从 bash shell 发送电子邮件。

必备条件

  • 在本教程中,我们使用 SendEmail 命令行 SMTP 客户端发送电子邮件,您必须在系统上安装 SendMail
  • 您必须已验证电子邮件地址或在 Amazon SES 中有验证的域名。
  • Amazon SES 中 的所有新帐户都处于沙盒模式,需要提交一个请求将 SES 帐号切换到生产模式。

Sending Emails via SMTP

以下是一个使用 SendEmail SMTP 客户端通过远程 SMTP 服务器发送电子邮件的 shell 脚本,可以替换为任何流行的 SMTP 提供商,如 Sendgrid、Amazon SES 和 Mailchimp 等。

复制代码
#!/usr/bin/env bash

## SMTP configuration details

SMTP_HOST="email-smtp.us-east-1.amazonaws.com"
SMTP_PORT="587"
SMTP_USER="XXXXXXXXXXXXXXX"
SMTP_PASS="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
EMAIL_FROM="notification@example.com"
EMAIL_TO="your-email@example.com"

SUBJECT="WARNING: Github Public Repo Found"

## Sending email

cat Mailcontent.txt | sendemail -l /tmp/email.log
-f ${EMAIL_FROM}
-u ${SUBJECT}
-t ${EMAIL_TO}
-s ${SMTP_HOST}:${SMTP_PORT}
-o tls=yes
-xu ${SMTP_USER}
-xp ${SMTP_PASS}

在上述脚本中,Mailcontent.txt 文件包含邮件正文内容。

我的开源项目

相关推荐
丰锋ff4 小时前
基于 Qt 的智能门禁系统(二)
开发语言·qt
fpcc4 小时前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
SomeB1oody5 小时前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
mqiqe6 小时前
AgentScope Java 2.0 协议集成全景解析:A2A、AG-UI、Agent Protocol 三大开放协议实战指南
java·开发语言·ui
lzhdim6 小时前
12、JavaScript常见的内存泄露问题 - JavaScript学习系列文章
开发语言·前端·javascript·学习·ecmascript
脉动数据行情6 小时前
Java 实现台股 TWSE/TPEx 行情采集(个股 + K 线)
java·开发语言·twse·tpex·台股
爱学习的小邓同学6 小时前
Golang --- (1)第一个Golang程序
开发语言·后端·golang
zx_741484817 小时前
【Python 入门】面向对象基础:类、对象、成员变量与构造方法
开发语言·python
liangshanbo12158 小时前
虚拟列表深度面试题整理
java·开发语言·前端
ZISHU_9878 小时前
用 TLabel 给 SynTouch BioTac 数据做语义标注:从原始信号到结构化标注
开发语言·人工智能·python·数据·机器人触觉