Mutt电子邮件的使用
Mutt電子郵件的使用
- Mutt電子郵件的使用
- 1.程序安裝
- 2.配置發信工具 msmtp
- 3.配置收信工具getmail
- 4.創建郵箱文件
- 5、配置信件分揀、投遞工具procmail
- 6、信件管理工具mutt基本配置
- 7、信件管理工具mutt個性化配置
- 參考
"All mail clients suck. This one just sucks less." -me, circa 1995
安裝完mutt后,在/usr/share/doc/mutt/*下有份很好的手冊
mutt是一個基于ncurse的Email客戶端。即是一個郵件管理程序。事實上,我們通常所指的mutt是一套郵件處理工具鏈,mutt作為郵件管理工具,是這套工具鏈的核心。在這套工具鏈中,一般還包括以下工具:
- offlineimap 是采用 IMAP 協議處理郵件;
- getmail 采用 POP3 協議處理郵件;
- procmail 用來過濾郵件;
- msmtp 用來發送郵件
(11/18)搞了一晚上,終于可以用了,mutt的內置的imap不怎么好,不能離線閱讀,明天換成offlineimap試試。另外,多郵箱地址的還沒有搞定,明天繼續。
(11/20)最終還是選擇了pop3,offlineimap還是沒有搞定。
1.程序安裝
安裝mutt,msmtp,getmail,procmail:
$ sudo apt-get install mutt msmtp getmail4 procmail如果需要用vim編寫信件,而又沒安裝的話:
$ sudo apt-get install vim2.配置發信工具 msmtp
在家目錄下建立名為 .msmtprc 的配置文件:
$ vim ~/.msmtprc在文件中加入一下內容:
#Gmail account gmail # 賬戶名稱是gmail,這個可以隨意寫 host smtp.gmail.com # 發信服務器是smtp.gmail.com,這個是郵件服務器規定的 from waikeungshen@gmail.com # 郵箱地址tls on # tls/ssl加密,gmail郵件服務器的要求 auth on # 發信驗證,大多郵件服務器的要求 port 587 # gmail的發信端口user waikeungshen # 郵箱賬號 password xxxxxx # 郵箱密碼,明文# 默認發信賬戶名稱 account default: gmail配置文件根據實際情況修改,其中發信發信服務器地址,發信端口是必須的。tls的值可能是tls on 也可能是 tls off,而auth on/login/plain。
保存退出后,由于里面的密碼是明文,所以要設置權限,此文件只能本人訪問。
$ chmod 600 ~/.msmtprc3.配置收信工具getmail
首先在家目錄下建立 .getmail 文件夾:
$ mkdir ~/.getmail然后在.getmail目錄內為每個郵箱各建立一個配置文件,比如為我的gmail建立getmailrc.gmail:
$ vim ~/.getmail/getmailrc.gmail并寫入如下內容:
[options] verbose = 0 # 不產生過多信息 read_all = false # 只收取新信件 delete = false # 將服務器上已被接收的信件刪除[retriever] type = SimplePOP3SSLRetriever # POP3收信方式 server = pop.gmail.com # 收信服務器地址,這個是郵件服務器規定的 port = 995 # 收信端口 username = waikeungshen@gmail.com # 郵箱賬號 password = xxxxxxxx # 密碼,明文[destination] type = MDA_external # 因為要使用procmail分揀信件,所以此處這樣填寫 path = /usr/bin/procmail # procmail命令的位置,如果不確定可以 unixfrom = true # 這一行寫不寫無所謂注意:不可將不同郵箱的配置文件寫到一起。例如我還有一個hotmail的郵箱,我另外建立一個郵箱的配置文件getmailrc.hotmail。
創建一個腳本文件來調用這些郵箱的配置文件。
$ vim ~/.getmail/getmail.sh在里面寫道:
#!/bin/bash getmail -n -r ~/.getmail/getmailrc.gmail -r ~/.getmail/getmailrc.hotmail執行該腳本,就相當與對我的gmail和hotmail郵箱執行了getmail的命令。但不能每次都是我們手動去執行,將此事交給系統守護進程:
$ crontab -e第一次使用此命令可能會出現選擇編輯器的提示,可以選擇vi,然后就會啟動vi,可能又會就VIM的配置文件報一些錯誤,回車就打開了相應文件。在其中加入:
0,10,20,30,40,50 * * * * ~/.getmail/getmail.sh > /dev/null 2>&1注意:> /dev/null 2>&1避免getmail收信報告被當作信件發至郵箱(如果不這樣,新信件就看不完了)。現在是每十分鐘收一次。
同樣由于文件中含有明文密碼,設置權限:
$ chmod -R 700 ~/.getmail4.創建郵箱文件
getmail收取信件,而信件的存放地點,我們還未指定。在家目錄下建立mail目錄,其內用文本文件inbox、sent作為收件箱和發件箱:
$ mkdir ~/mail $ touch ~/mail/inbox ~/mail/sent ~/mail/.procmaillog一起創建的還有procmail的錯誤記錄文件.procmaillog。mail目錄內存放了信件等重要內容,杜絕他人訪問:
$ chmod -R 700 ~/mail5、配置信件分揀、投遞工具procmail
getmail只是將收到的信件交由procmail處理,procmail如何讓它們到達我們已經創建好的收件箱,需要在.procmailrc中說明:
$ vim ~/.procmailrc加入以下內容:
PATH=/bin:/sbin:/usr/bin:/usr/sbin SHELL=/bin/bash MAILDIR=$HOME/.Mail DEFAULT=$MAILDIR/inbox LOGFILE=$MAILDIR/procmaillog#:0 #* ^From.*@gmail.com #Gmail:0 *.* inboxprocmail很強大,可以設置各種分揀、投遞的規則,當然過濾垃圾郵件也不在話下。這里只是將除gmail外所有信件都投到inbox中。
6、信件管理工具mutt基本配置
以上的msmtp、getmail、procmail,我們平時都接觸不到,因為管理、呈現信件的事情由mutt承擔,所以只要和mutt打交道就行了。
正因為這個原因,mutt的配置文件也更為復雜,先在家目錄下建立.muttrc文件:
$ vim .muttrc首先需要加入一些基本的設置語句:
set folder = "~/mail" # 所有信件所在目錄 set mbox = "~/mail/inbox" # 收件箱文件 set record = "~/mail/sent" # 發件箱文件 set spoolfile = "~/mail/inbox" # 啟動mutt后默認顯示的信箱文件set sendmail = "/usr/bin/msmtp" # 發信程序msmtp的位置,如果不確定可以# 通過$ which msmtp獲得為什么沒有指定收信工具呢?因為守護進程已經指使getmail定時收信,而getmail每收到一封信,就交由procmail,從而將新信投遞到inbox中。
此時mutt已經能夠工作,但收到的許多中文信件會顯示亂碼。所以必須在.muttrc中再加入以下內容:
set charset = "utf-8" # 終端支持的編碼,Linux下一般是utf-8set send_charset = "utf-8" # 發信編碼charset-hook ^us-ascii$ gb2312 # 用gb2312編碼顯示未設置編碼的信件 charset-hook ^big5$ big5 # 用big5編碼顯示繁體信件 charset-hook !utf-8 gb2312 # 用gb2312編碼顯示非utf-8編碼的信件 set assumed_charset = "gb2312" # 用gb2312編碼顯示未經MIME編碼的信件 set rfc2047_parameters = yes # 用gb2312編碼顯示中文附件名7、信件管理工具mutt個性化配置
參考我的.muttrc配置文件
#編碼 set charset="utf-8" set send_charset = "utf-8" # 發信編碼 charset-hook ^us-ascii$ gb2312 # 用gb2312編碼顯示未設置編碼的信件 charset-hook ^big5$ big5 # 用big5編碼顯示繁體信件 charset-hook !utf-8 gb2312 # 用gb2312編碼顯示非utf-8編碼的信件 set assumed_charset = "gb2312" # 用gb2312編碼顯示未經MIME編碼的信件 set rfc2047_parameters = yes # 用gb2312編碼顯示中文附件名#編輯器 set editor="/usr/bin/vim"#設置郵件發送程序 set sendmail="/usr/bin/msmtp"# 讓mutt監視下面幾個郵箱,并隨時報告新郵件 mailboxes "=inbox" mailboxes "=Gmail"#這是一個格式字符串,用來控制你的index的列表顯示。它的缺省定義是 set index_format="%4C %Z %{%b %d} %-15.15L (%4l) %s" #指定你有那些信箱文件。當你按 "c" 切換信箱時,再按 Tab 鍵,這些信箱就可供你選擇 mailboxes Mailbox sent-mail # Quit without question set quit=ask-yes# Ask for a key after command set wait_key=yesset folder = "~/.Mail" # 所有信件所在目錄 set mbox = "~/.Mail/inbox" # 收件箱文件 set record = "~/.Mail/sent" # 發件箱文件 set spoolfile = "~/.Mail/inbox" # 啟動mutt后默認顯示的信箱文件set sendmail = "/usr/bin/msmtp" # 發信程序msmtp的位置,如果不確定可以# 回信時是否包含原文 set include# 回信引文前的符號 set indent_str="> "# To recognize reply messages set reply_regexp="^(re([\[0-9\]+])*|aw|回復|答復)[::][ \t]*"# Traditional Fwd: subject set forward_format="Fwd: %s"set pager_stop=yes set edit_headers=no set pager_index_lines=5# 當你按"r"回信時,不提示你輸入回信地址和主題,直接進入編輯模式 set fast_reply #no reply to myself unset metoo unset reply_self set reply_regexp="^(re([\[0-9\]+])*|aw|回復)(:[ \t]|:)"# 判斷郵件列表 subscribe gdg-hangzhou@googlegroups.com subscribe hzlug@googlegroups.com#你發出的郵件保存到那個信箱文件?比如可以像我這樣每個月發出的信件放在不同的文件里。 set record="~/Mail/=sent-mail-`date +%Y-%m`"#把mutt發送的from域作為sendmail發送郵件的sender(否則會用user@localdomian) set envelope_from=yes# 排序方式 #set sort=threads #set sort_aux=reverse-last-date #set ascii_chars=yes#信件打分 score "~N" +2 # 新信+2 score "~O" +1 # 沒看過的信+1 score "~f newnuy" +5 # newnuy的信+5 score "~s Linux" +3 # 主題包含Linux的信+3 score "~D" -3 # 標記刪除的信-3set sort = score # 啟用分數排序#地址簿 source ~/.mutt/mutt.alias set alias_file=~/.mutt/mutt.aliascolor index yellow default ~p # To me color index blue default ~P # From me color index brightyellow default ~N # New color index brightgreen default "~N ~p" # New to me color index brightcyan default ~T # Tagged color index cyan default ~D # Deleted color index black cyan ~F # flaged參考
=-=-=-=-=
Powered by Blogilo
轉載于:https://www.cnblogs.com/waikeung/p/3470482.html
總結
以上是生活随笔為你收集整理的Mutt电子邮件的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云kafka安装
- 下一篇: N个苹果分给M个人,有多少种分法