linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“l(fā)inux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“l(fā)inux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法”吧!

成都創(chuàng)新互聯(lián)公司-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比銅陵網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式銅陵網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋銅陵地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴(lài)。

一封最簡(jiǎn)單的郵件


echo -e "To: handy1989@qq.com\nCC: handy1989@qq.com\nFrom: handy<handy@test.com>\nSubject: test\n\nhello world" | sendmail -t

看上去有點(diǎn)復(fù)雜,其實(shí)就是sendmail程序從標(biāo)準(zhǔn)輸入讀取郵件源碼,-t參數(shù)表示從郵件源碼提取收件人信息,然后發(fā)送到收件人的郵件服務(wù)器,我們稍做整理,將郵件源碼保存在email.txt中如下

To: handy1989@qq.com
CC: handy1989@qq.com
From: handy<handy@test.com>
Subject: test

hello world

將以上命令改為cat email.txt | sendmail -t,這樣就一目了然了。收到的郵件信息如下

linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法

郵件的格式


從前面的郵件源碼可以看到,郵件是和http類(lèi)似的文本協(xié)議,由郵件頭和郵件內(nèi)容兩部分組成,中間以空行分隔,郵件頭每行對(duì)應(yīng)一個(gè)字段,和http頭類(lèi)似,比如這里的To,CC,F(xiàn)rom,Subject,分別代表收件人,抄送人,發(fā)件人,標(biāo)題,如果有多個(gè)收件人或抄送人,用逗號(hào)分隔,郵件內(nèi)容才是我們?cè)卩]件客戶(hù)端真正看到的東西

郵件客戶(hù)端都可以查看郵件源碼,比如下面就是我收到的一封郵件的源碼

linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法


郵件標(biāo)題使用中文


如果郵件標(biāo)題直接使用中文字符會(huì)導(dǎo)致收到的郵件亂碼,為了避免這種情況,應(yīng)該對(duì)中文進(jìn)行base64編碼,而這也是郵件最常用的編碼方式,當(dāng)然,在進(jìn)行base64編碼之前先得對(duì)中文字符進(jìn)行編碼(UTF-8或GBK等等),這和html的編碼是一樣的概念,采用UTF-8和base64編碼的格式如下

=?UTF-8?B?xxxxxx?=

其中xxxxxx為編碼后的數(shù)據(jù),用python可以快速對(duì)中文進(jìn)行編碼,比如對(duì)中文'測(cè)試'先進(jìn)行utf-8編碼再進(jìn)行base64編碼結(jié)果為

>>> import base64
>>> base64.standard_b64encode(u'測(cè)試'.encode('utf-8'))
'5rWL6K+V'

在From和Subject中使用中文,郵件源碼如下

To: handy1989@qq.com
CC: handy1989@qq.com
From: =?UTF-8?B?5rWL6K+V?=<handy@test.com>
Subject: =?UTF-8?B?5rWL6K+V?=

hello world

這里將發(fā)件人的名字和郵件標(biāo)題都改為了'測(cè)試',收到的郵件效果為

linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法

郵件內(nèi)容使用html


如果郵件內(nèi)容是html代碼,則需要在郵件頭添加Content-type字段來(lái)標(biāo)記文本類(lèi)型,同時(shí)還需要標(biāo)記郵件內(nèi)容的字符編碼,以下郵件源碼發(fā)送的正是html內(nèi)容

To: handy1989@qq.com
CC: handy1989@qq.com
From: =?UTF-8?B?5rWL6K+V?=<handy@test.com>
Subject: =?UTF-8?B?5rWL6K+V?=
Content-type: text/html;charset=utf-8

<h2>hello world</h2>

收到的郵件效果為

linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法

到此,相信大家對(duì)“l(fā)inux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

分享題目:linux中shell發(fā)送Email郵件的實(shí)現(xiàn)方法-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://www.muchs.cn/article14/picge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)云服務(wù)器、自適應(yīng)網(wǎng)站、小程序開(kāi)發(fā)、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司