如何解决使用cURL和bash脚本中带有特殊字符的密码发送电子邮件
我的SMTP配置如下:(所有都是伪数据)
SMTP_USERNAME="fakenews@yahoo.comg"
SMTP_SERVER="smtp.office365.com"
SMTP_PASSWORD='rdjsllskdslsds!'
SMTP_PORT="587"
EMAIL_FROM="support@fakernews.com"
EMAIL_TO="rfakeuser@fakernews.com"
注意“!”在密码末尾标记。这无法更改。
当我使用硬编码的所有内容运行以下命令时,它可以正常工作,并发送电子邮件。
curl --url smtp://smtp.office365.com:587 --mail-from support@fakernews.com --mail-rcpt rfakeuser@fakernews.com --upload-file tempemailbody_1.txt --user fakenews@yahoo.comg:rdjsllskdslsds! --ssl
但是,当我用变量替换它们时,如下所示,我一直在拒绝访问。
curl --url "smtp://$SMTP_SERVER:$SMTP_PORT" --mail-from $EMAIL_FROM --mail-rcpt $EMAIL_TO --upload-file tempemailbody_1.txt --user "$SMTP_USERNAME:$SMTP_PASSWORD" --ssl
错误消息是:
curl: (9) remote access denied: 501
我认为这是因为以某种方式导致变量解释的原因,但是我无法弄清楚是什么原因。我应该在命令中进行哪些更改以使其起作用?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。