如何从终端发送电子邮件?

时间:2011-11-24 17:39:04

标签: bash email terminal

我知道有很多方法可以在Linux / MacOS中从终端发送电子邮件,但我似乎无法找到有关如何执行此操作的正确文档。

基本上我需要它用于我的bash脚本,每次文件发生更改时都会通知我。

7 个答案:

答案 0 :(得分:123)

echo "this is the body" | mail -s "this is the subject" "to@address"

答案 1 :(得分:111)

进入终端并输入man mail寻求帮助。

您需要设置SMTP

http://hints.macworld.com/article.php?story=20081217161612647

另见:

http://www.mactricksandtips.com/2008/09/send-mail-over-your-network.html

例如:

mail -s "hello" "example@example.com" <<EOF
hello
world
EOF

这会向example@example.com发送一封主题为hello的电子邮件和

消息
  

您好

     

世界

答案 2 :(得分:39)

如果您只需要一个主题行(如在警告信息中),只需执行以下操作:

mailx -s "This is all she wrote" < /dev/null "myself@myaddress"

答案 3 :(得分:15)

如果要在Linux上附加文件

echo 'mail content' | mailx -s 'email subject' -a attachment.txt username@stackoverflow.com

答案 4 :(得分:8)

在你的mac os或linux os的终端上输入这段代码

mail -s "hi" abc@example.com <<< "how are you?"<br>

举个例子试试这个

{{1}}

答案 5 :(得分:1)

对于SMTP主机和Gmail,我喜欢使用Swaks-> https://easyengine.io/tutorials/mail/swaks-smtp-test-tool/

在Mac上:

  1. brew install swaks
  2. swaks --to user@example.com --server smtp.example.com

答案 6 :(得分:0)

可能最简单的方法是使用curl,不需要安装任何其他软件包,可以直接在请求中对其进行配置。

以下是使用gmail smtp服务器的示例:

curl --url 'smtps://smtp.gmail.com:465' --ssl-reqd \
  --mail-from 'from-email@gmail.com' \
  --mail-rcpt 'to-email@gmail.com' \
  --user 'from-email@gmail.com:YourPassword' \
  -T <(echo -e 'From: from-email@gmail.com\nTo: to-email@gmail.com\nSubject: Curl Test\n\nHello')