1. 程式人生 > >liunx 內置mail 發送郵件

liunx 內置mail 發送郵件

install 指定 下使用 情況 lai 一個 系統郵件 pty cram-md5


 郵件配置文件/etc/mail.rc 

[root@001 ~]# vim /etc/mail.rc #添加如下內容

set [email protected]

set smtp=smtp.126.com

set [email protected]

set smtp-auth-password=xxx

set smtp-auth=login

---說明

from:對方收到郵件時顯示的發件人

smtp:指定第三方發郵件的smtp服務器地址

set smtp-auth-user:第三方發郵件的用戶名

set smtp-auth-password:用戶名對應的密碼,有些郵箱填的是授權碼

smtp-auth:SMTP的認證方式,默認是login,也可以改成CRAM-MD5或PLAIN方式

-------------------------------------------------------------------------------------------------------

發送郵件

-s後面是郵件的主題,主題後面是目標郵件地址,當編輯完成之後使用Ctrl+D退出,同時郵件也會被發送出去
[root@centos6 ~]# mail -s "Lucky mail" 收件人地址
Hi Tomas,
Thank you for you help!
Regards,
Daniel
提示報錯:

send-mail: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
send-mail: warning: inet_protocols: configuring for IPv4 support only
postdrop: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
postdrop: warning: inet_protocols: configuring for IPv4 support only

提示只支持IPV4

vim /etc/postfix/main.cf

inet_protocols = all 修改配置為 inet_protocols = ipv4

postfix啟動服務

/etc/init.d/postfix start

直接發送郵件

mail -s "郵件主題" 收件人地址 #回車

郵件內容 # 回車
ctrl+D 結束並發送郵件

第一行是輸入的命令,-s表示郵件的主題,後面的是郵件的接收人,輸入完這行命令後回車,會進入郵件正文的編寫,我們可以輸入任何文字。

當郵件正文輸入完成後,需要按CTRL+D結束輸入,此時會提示你輸入Cc地址,即郵件抄送地址,沒有直接回車就完成了郵件的發送。


使用管道進行郵件發送

echo "hello,this is the content of mail.welcome to www.linuxde.net" | mail -s "Hello from linuxde.net by pipe" [email protected]
  使用管道直接敲入這行命令即可完成郵件的發送,其中echo後的是郵件正文。


使用文件進行郵件發送

  mail -s "Hello from linuxde.net by file" [email protected] < mail.txt

使用上面的命令後,我們就可以把mail.txt文件的內容作為郵件的內容發送給[email protected]了。


很多情況下,我們也需要使用郵件來發送附件,在linux下使用mail命令發送附件也很簡單,不過首先需要安裝uuencode軟件包,這個程序是對二進制文件進行編碼使其適合通過郵件進行發送

在CentOS上安裝該軟件包如下: yum install sharutils

安裝完成後我們就可以來進行附件的發送了,

使用如下命令: uuencode test.txt test | mail -s "hello,see the attachement" [email protected]

完成後就可以把text.txt文件作為郵件的附件發送出去了。uuencode有兩個參數,第一個是要發送的文件,第二個是顯示的文件名稱。

------------------------------------------------------------------------------------------------------------

查看郵件 $ mail

mail程序將逐個顯示用戶的信件,並依照時間順序,顯示最新的信件。

每顯示一段信件,mail都詢問用戶是否要對該信件作些處理。

若用戶回答d,則表示刪除信件;若僅按回車鍵,表示對信件不作任何改動(信件仍舊保存,下次還可讀這一信件);

若回答p,則要求重復顯示信件;s filename表示要把信件存入所命名的文件;

若回答q,表示要從mail退出。

技術分享

> 表示當前郵件 U 表示未讀

& p 顯示當前郵件

& 2 讀取第2個的郵件

其他常用參數:
unread 標記為未讀郵件
h|headers 顯示當前的郵件列表
l|list 顯示當前支持的命令列表
?|help 顯示多個查看郵件列表的命令參數用法
d 刪除當前郵件,指針並下移。 d 1-100 刪除第1到100封郵件
f|from 只顯示當前郵件的簡易信息。 f num 顯示某一個郵件的簡易信息
f|from num 指針移動到某一封郵件
z 顯示剛進行收件箱時的後面二十封郵件列表
more|p|page 閱讀當前指針所在的郵件內容 閱讀時,按空格鍵就是翻頁,按回車鍵就是下移一行
t|type|more|p|page num 閱讀某一封郵件
n|next|{什麽都不填} 閱讀當前指針所在的下一封郵件內容
閱讀時,按空格鍵就是翻頁,按回車鍵就是下移一行
v|visual 當前郵件進入純文本編輯模式
n|next|{什麽都不填} num 閱讀某一封郵件
top 顯示當前指針所在的郵件的郵件頭
file|folder 顯示系統郵件所在的文件,以及郵件總數等信息
x 退出mail命令平臺,並不保存之前的操作,比如刪除郵件
q 退出mail命令平臺,保存之前的操作,比如刪除已用d刪除的郵件,已閱讀郵件會轉存到當前用戶家目
錄下的mbox文件中。如果在mbox中刪除文件才會徹底刪除。

-------------------------------------------------------------------------------------------------------

檢查所傳送的電子郵件是否送出,或滯留在郵件服務器中
語法:/usr/lib/sendmail -bp
若屏幕顯示為“Mail queue is empty” 的信息,表示mail 已送出。
若為其他錯誤信息,表示電子郵件因故尚未送出。

liunx 內置mail 發送郵件