如何在Linux系统中使用命令发送邮件

作者 : 开心源码 本文共2743个字,预计阅读时间需要7分钟 发布时间: 2022-05-13 共228人阅读

如何在Linux系统中使用命令发送邮件

Linux系统更多的被用来做服务器系统,在运维的过程中难免我们需要编写脚本监控少量指标并定期发送邮件。

本教程将详情如何在Linux系统中使用命令发送邮件,以下举例5 个命令行邮件用户端进行举例讲解。

5 个命令行邮件

  • mail / mailx
  • mutt
  • mpack
  • sendmail
  • ssmtp

工作原理

首先我们详情下Linux中这些邮件命令的工作原理,它们是如何把邮件传递给收件人的。邮件命令通过撰写邮件并发送给一个本地邮件传输代理商(MTA,如 sendmail、Postfix),请看下面流程讲解。

如何在Linux上安装 mail/mailx 命令

mail 命令是 Linux 终端发送邮件用的最多的命令。mailxmail 命令的升级版本,基于 Berkeley Mail 8.1,意在提供 POSIX mailx 命令的功能,并支持 MIME、IMAP、POP3、SMTP 和 S/MIME 扩展。mailx 在某些交互特性上更增强大,如缓冲邮件消息、垃圾邮件评分和过滤等。在 Linux 发行版上,mail 命令是 mailx 命令的软链接。可以运行下面的命令从官方发行版仓库安装 mail 命令。

对于 Debian/Ubuntu 系统安装 mailutils。

sudo apt-get install mailutils

对于 RHEL/CentOS 系统安装 mailx。

sudo yum install mailx

对于 Fedora 系统安装 mailx。

sudo dnf install mailx

如何在 Linux 上使用 mail 命令发送邮件

mail 命令简单易用。假如你不需要发送附件,使用下面的 mail 命令格式即可以发送邮件了:

echo "This is the mail body" | mail -s "Subject" linux265@163.com

假如你要发送附件,使用下面的 mail 命令格式:

echo "This is the mail body" | mail -a test1.txt -s "Subject" linux265@163.com
  • -a:用于在基于 Red Hat 的系统上增加附件。
  • -A:用于在基于 Debian 的系统上增加附件。
  • -s:指定消息标题。

如何在 Linux 上安装 mutt 命令

mutt 是另一个很受欢迎的在 Linux 终端发送邮件的命令。mutt 是一个小而强大的基于文本的程序,用来在 unix 操作系统下阅读和发送电子邮件,并支持彩色终端、MIME、OpenPGP 和按邮件线索排序的模式。可以运行下面的命令从官方发行版仓库安装 mutt 命令。

对于 Debian/Ubuntu 系统安装 mutt。

sudo apt-get install mutt

对于 RHEL/CentOS 系统安装 mutt。

sudo yum install mutt

对于 Fedora 系统安装 mutt。

sudo dnf install mutt

如何在 Linux 上使用 mutt 命令发送邮件

mutt 一样简单易用。假如你不需要发送附件,使用下面的 mutt 命令格式即可以发送邮件了:

 echo "This is the mail body" | mutt -s "Subject" linux265@163.com

假如你要发送附件,使用下面的 mutt 命令格式:

echo "This is the mail body" | mutt -s "Subject" linux265@163.com -a test1.txt

如何在 Linux 上安装 mpack 命令

mpack 是另一个很受欢迎的在 Linux 终端上发送邮件的命令。mpack 程序会在一个或者多个 MIME 消息中对命名的文件进行编码。编码后的消息被发送到一个或者多个收件人。可以运行下面的命令从官方发行版仓库安装 mpack 命令。

对于 Debian/Ubuntu 系统安装 mpack。

sudo apt-get install mpack

对于 RHEL/CentOS 系统安装mpack。

sudo yum install mpack

对于 Fedora 系统安装 mpack。

sudo dnf install mpack

如何在 Linux 上使用 mpack 命令发送邮件

mpack 同样简单易用。假如你不需要发送附件,使用下面的 mpack 命令格式即可以发送邮件了:

 echo "This is the mail body" | mpack -s "Subject" linux265@163.com

假如你要发送附件,使用下面的 mpack 命令格式:

echo "This is the mail body" | mpack -s "Subject" linux265@163.com -a test1.txt

如何在 Linux 上安装 sendmail 命令

sendmail 是一个上广泛使用的通用 SMTP 服务器,你也可以从命令行用 sendmail 发邮件。可以运行下面的命令从官方发行版仓库安装 sendmail 命令。

对于 Debian/Ubuntu 系统安装 sendmail。

sudo apt-get install sendmail

对于 RHEL/CentOS 系统安装 sendmail。

sudo yum install sendmail

对于 Fedora 系统安装 sendmail。

sudo dnf install sendmail

如何在 Linux 上使用 sendmail 命令发送邮件

sendmail 同样简单易用。使用下面的 sendmail 命令发送邮件。

echo -e "Subject: Test Mail\nThis is the mail body" > /tmp/send-mail.txtsendmail linux265@163.com < send-mail.txt

如何在 Linux 上安装 ssmtp 命令

ssmtp 是相似 sendmail 的一个只发送不接收的工具,可以把邮件从本地计算机传递到配置好的 邮件主机(mailhub)。客户可以在 Linux 命令行用 ssmtp 把邮件发送到 SMTP 服务器。可以运行下面的命令从官方发行版仓库安装 ssmtp 命令。

对于 Debian/Ubuntu 系统安装 ssmtp。

sudo apt-get install ssmtp

对于 RHEL/CentOS 系统安装 ssmtp。

sudo yum install ssmtp

对于 Fedora 系统安装 ssmtp。

sudo dnf install ssmtp

如何在 Linux 上使用 ssmtp 命令发送邮件

ssmtp 同样简单易用。使用下面的 ssmtp 命令格式发送邮件。

echo -e "Subject: Test Mail\nThis is the mail body" > /tmp/ssmtp-mail.txtssmtp linux265@163.com < /tmp/ssmtp-mail.txt

写在最后

本教程已经对如何在Linux系统中使用命令发送邮件讲解完成,当你需要在 shell 脚本中创立邮件时,就需要用到命令发送邮件的知识,希望本教程对你有所帮助。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 如何在Linux系统中使用命令发送邮件

发表回复