1

我做读者有一段时间了。通常我自己处理事情,但今天我需要一个提示。

因此,我的任务是在我的新工作(10 万观众)中以最少的预算和很短的通知时间(明天)运行电子邮件活动。我倾向于 AWS(亚马逊网络服务),因为亚马逊 SES(简单电子邮件服务)非常便宜,而且您只需支付您使用的费用。

尝试在命令行上使用 AWS SDK。我制作了一个小脚本来逐行读取地址文件(.txt)并执行发送邮件命令

#! /bin/bash

file='./test-list.txt'
from='sender@domain.com'

for line in $(<$file)
do
    #send mail
    aws ses send-templated-email --source=$from --destination=$line --template 'test' --template-data ""
done

脚本返回错误消息:

Error parsing parameter '--destination': Expected: '=', received: '@' for input:
To:recipient@domain.com

现在我不是 bash 之王,但我尝试了不同的参数公式,但没有什么能让我摆脱错误。输入文件中的每一行都是正确的电子邮件地址,这看起来像是一个解析问题,但我不明白。

有任何想法吗 ?这会很有帮助:)

4

1 回答 1

0

您需要从https://docs.aws.amazon.com/cli/latest/reference/ses/send-templated-email.html#options使用正确的目的地格式

使用示例send-email

aws ses send-email --from "example.com" --destination "ToAddresses=${line}" --text "hello world!" --subject "test"

像给定的例子:

aws ses send-templated-email --source $from --destination "ToAddresses=${line}" --template "test" --template-data ""
于 2020-12-29T20:50:32.213 回答