如何从命令行发送电子邮件?

Jos*_*aro 16 email command-line

我想从命令行快速发送电子邮件.我意识到可能有很多不同的方法来做到这一点.

我正在寻找一种简单的方法来从Linux终端(可能是一个bash shell,但任何事情都应该这样做)以及在Windows上执行此操作的另一种方法.我希望能够在命令行上发送电子邮件,或者可以灵活地将消息传递到命令行程序中.你会怎么做呢?如果你有小脚本也可以.

ary*_*yeh 11

$ echo "This is the email body" | mail -s "This is the subject" me@email.com
Run Code Online (Sandbox Code Playgroud)

或者:

$ cat | mail -s "A few lines off the top of my head" me@here.com
This is where my
multiline
message would go
^D
Run Code Online (Sandbox Code Playgroud)

^ D - 表示按ctrl+d

  • 可笑的无用的猫:) (2认同)

Kyl*_*nin 8

你可以使用邮件:

$mail -s <subject> <recipients>
Run Code Online (Sandbox Code Playgroud)

然后键入消息并以仅包含句点的行结束消息.这表示您已完成并发送消息.

您也可以从STDIN管道发送电子邮件,它将作为电子邮件的文本发送:

$<mail-generating-program> | mail -s <subject> <recipients>
Run Code Online (Sandbox Code Playgroud)

使用此方法的一个小注意事项 - 除非您的计算机已连接到互联网并且您的DNS设置设置正确,否则您将无法收到对邮件的回复.要获得更强大的命令行程序,您可以链接到您的POP或IMAP电子邮件帐户,请查看pinemutt.