主頁(yè) > 知識(shí)庫(kù) > 在 Linux 命令行發(fā)送郵件的 5 種方法(推薦)

在 Linux 命令行發(fā)送郵件的 5 種方法(推薦)

熱門標(biāo)簽:百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 網(wǎng)站建設(shè) 硅谷的囚徒呼叫中心 美圖手機(jī) 檢查注冊(cè)表項(xiàng) 智能手機(jī) 阿里云 使用U盤裝系統(tǒng)

當(dāng)你需要在 shell 腳本中創(chuàng)建郵件時(shí),就需要用到命令行發(fā)送郵件的知識(shí)。Linux 中有很多命令可以實(shí)現(xiàn)發(fā)送郵件。本教程中包含了最流行的 5 個(gè)命令行郵件客戶端,你可以選擇其中一個(gè)。這 5 個(gè)命令分別是:

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

工作原理

我先從整體上來(lái)解釋下 Linux 中郵件命令怎么把郵件傳遞給收件人的。郵件命令撰寫郵件并發(fā)送給一個(gè)本地郵件傳輸代理(MTA,如 sendmail、Postfix)。郵件服務(wù)器和遠(yuǎn)程郵件服務(wù)器之間通信以實(shí)際發(fā)送和接收郵件。下面的流程可以看得更詳細(xì)。

1) 如何在 Linux 上安裝 mail/mailx 命令

mail 命令是 Linux 終端發(fā)送郵件用的最多的命令。mailx 是 mail 命令的更新版本,基于 Berkeley Mail 8.1,意在提供 POSIX mailx 命令的功能,并支持 MIME、IMAP、POP3、SMTP 和 S/MIME 擴(kuò)展。mailx 在某些交互特性上更加強(qiáng)大,如緩沖郵件消息、垃圾郵件評(píng)分和過(guò)濾等。在 Linux 發(fā)行版上,mail 命令是 mailx 命令的軟鏈接。可以運(yùn)行下面的命令從官方發(fā)行版?zhèn)}庫(kù)安裝 mail 命令。

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或 APT 命令 安裝 mailutils。

$ sudo apt-get install mailutils

對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 安裝 mailx。

$ sudo yum install mailx

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 安裝 mailx。

$ sudo dnf install mailx

1a) 如何在 Linux 上使用 mail 命令發(fā)送郵件

mail 命令簡(jiǎn)單易用。如果你不需要發(fā)送附件,使用下面的 mail 命令格式就可以發(fā)送郵件了:

$ echo "This is the mail body" | mail -s "Subject" 2daygeek@gmail.com

如果你要發(fā)送附件,使用下面的 mail 命令格式:

$ echo "This is the mail body" | mail -a test1.txt -s "Subject" 2daygeek@gmail.com

-a:用于在基于 Red Hat 的系統(tǒng)上添加附件。
-A:用于在基于 Debian 的系統(tǒng)上添加附件。
-s:指定消息標(biāo)題。

2) 如何在 Linux 上安裝 mutt 命令

mutt 是另一個(gè)很受歡迎的在 Linux 終端發(fā)送郵件的命令。mutt 是一個(gè)小而強(qiáng)大的基于文本的程序,用來(lái)在 unix 操作系統(tǒng)下閱讀和發(fā)送電子郵件,并支持彩色終端、MIME、OpenPGP 和按郵件線索排序的模式??梢赃\(yùn)行下面的命令從官方發(fā)行版?zhèn)}庫(kù)安裝 mutt 命令。

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或 APT 命令 安裝 mutt。

$ sudo apt-get install mutt

對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 安裝 mutt。

$ sudo yum install mutt

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 安裝 mutt。

$ sudo dnf install mutt

2b) 如何在 Linux 上使用 mutt 命令發(fā)送郵件

mutt 一樣簡(jiǎn)單易用。如果你不需要發(fā)送附件,使用下面的 mutt 命令格式就可以發(fā)送郵件了:

$ echo "This is the mail body" | mutt -s "Subject" 2daygeek@gmail.com

如果你要發(fā)送附件,使用下面的 mutt 命令格式:

$ echo "This is the mail body" | mutt -s "Subject" 2daygeek@gmail.com -a test1.txt

3) 如何在 Linux 上安裝 mpack 命令

mpack 是另一個(gè)很受歡迎的在 Linux 終端上發(fā)送郵件的命令。mpack 程序會(huì)在一個(gè)或多個(gè) MIME 消息中對(duì)命名的文件進(jìn)行編碼。編碼后的消息被發(fā)送到一個(gè)或多個(gè)收件人??梢赃\(yùn)行下面的命令從官方發(fā)行版?zhèn)}庫(kù)安裝 mpack 命令。

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或 APT 命令 安裝 mpack。

$ sudo apt-get install mpack

對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 安裝 mpack。

$ sudo yum install mpack

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 安裝 mpack。

$ sudo dnf install mpack

3a) 如何在 Linux 上使用 mpack 命令發(fā)送郵件

mpack 同樣簡(jiǎn)單易用。如果你不需要發(fā)送附件,使用下面的 mpack 命令格式就可以發(fā)送郵件了:

$ echo "This is the mail body" | mpack -s "Subject" 2daygeek@gmail.com

如果你要發(fā)送附件,使用下面的 mpack 命令格式:

$ echo "This is the mail body" | mpack -s "Subject" 2daygeek@gmail.com -a test1.txt

4) 如何在 Linux 上安裝 sendmail 命令

sendmail 是一個(gè)上廣泛使用的通用 SMTP 服務(wù)器,你也可以從命令行用 sendmail 發(fā)郵件??梢赃\(yùn)行下面的命令從官方發(fā)行版?zhèn)}庫(kù)安裝 sendmail 命令。

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或 APT 命令安裝 sendmail。

$ sudo apt-get install sendmail

對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 安裝 sendmail。

$ sudo yum install sendmail

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 安裝 sendmail。

$ sudo dnf install sendmail

4a) 如何在 Linux 上使用 sendmail 命令發(fā)送郵件

sendmail 同樣簡(jiǎn)單易用。使用下面的 sendmail 命令發(fā)送郵件。

$ echo -e "Subject: Test Mail\nThis is the mail body" > /tmp/send-mail.txt
$ sendmail 2daygeek@gmail.com < send-mail.txt

5) 如何在 Linux 上安裝 ssmtp 命令

ssmtp 是類似 sendmail 的一個(gè)只發(fā)送不接收的工具,可以把郵件從本地計(jì)算機(jī)傳遞到配置好的 郵件主機(jī)(mailhub)。用戶可以在 Linux 命令行用 ssmtp 把郵件發(fā)送到 SMTP 服務(wù)器??梢赃\(yùn)行下面的命令從官方發(fā)行版?zhèn)}庫(kù)安裝 ssmtp 命令。

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或 APT 命令安裝 ssmtp。

$ sudo apt-get install ssmtp

對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 安裝 ssmtp。

$ sudo yum install ssmtp

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 安裝 ssmtp。

$ sudo dnf install ssmtp

5a) 如何在 Linux 上使用 ssmtp 命令發(fā)送郵件

ssmtp 同樣簡(jiǎn)單易用。使用下面的 ssmtp 命令格式發(fā)送郵件。

$ echo -e "Subject: Test Mail\nThis is the mail body" > /tmp/ssmtp-mail.txt
$ ssmtp 2daygeek@gmail.com < /tmp/ssmtp-mail.txt

總結(jié)

以上所述是小編給大家介紹的在 Linux 命令行發(fā)送郵件的 5 種方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

標(biāo)簽:山南 懷化 煙臺(tái) 湖北 湘潭 通遼 黃山 賀州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在 Linux 命令行發(fā)送郵件的 5 種方法(推薦)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266