Mac OS X中的Gmail命令行工具Mutt
新的一天,我決定開始在命令行上做一項新的任務。在使用Twitter CLI設置把自己出賣了並在不久放棄後(我覺得命令行降低了Twitter的魅力所在),我轉移到了Gmail上,我對於快速發送和接收電子郵件的前景感到興奮,而且很少打斷開發流程。
介紹一下Mutt,這個令人驚訝的命令行電子郵件客戶端讓一切回到了1998年!
新手上路
如果還沒有安裝Homebrew ,請執行以下操作:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安裝Homebrew後,安裝Mutt:
brew install mutt
一旦完成,準備開始配置Mutt以使用我們的Gmail帳戶。用nano(一個終端文本編輯器)打開Mutt配置文件:
nano ~/.muttrc
你會看到一個像上面那樣的空文件。粘貼以下內容並根據帳戶詳細信息以大寫形式編輯所有內容:
set imap_user = 「YOUR-USERNAME@gmail.com」
set imap_pass = 「YOUR-PASSWORD」
set smtp_url = 「smtp://YOUR-USERNAME@smtp.gmail.com:587/」
set smtp_pass = 「YOUR-PASSWORD」
set from = 「YOUR-USERNAME@gmail.com」
set realname = 「YOUR NAME」
set folder = 「imaps://imap.gmail.com:993"
set spoolfile = 「+INBOX」
set postponed = 「+[Gmail]/Drafts」
set header_cache = ~/.mutt/cache/headers
set message_cachedir = ~/.mutt/cache/bodies
set certificate_file = ~/.mutt/certificates
set move = no
set smtp_authenticators = 『gssapi:login』
完成後,按Control-O(輸出),然後按Enter鍵。然後按Control-X退出nano。如果一切順利,現在可以使用以下命令從終端訪問Gmail帳戶:
mutt
如果在.muttrc中提供了正確的信息,但仍然無法連接,Google可能出於安全原因阻止了登錄。如果發生這種情況,您將收到Google發送的一封電子郵件,其中聲明「我們最近屏蔽了登錄信息」試圖訪問您的Google帳戶,並提供有關如何為不太安全的應用授予訪問許可權的說明。只需點擊該鏈接並更改設置即可啟用對安全性較低的應用的訪問許可權。
Mutt初步
如果像我一樣,你養成了永不刪除任何電子郵件的習慣,當你第一次啟動Mutt時,你會看到一個巨大的輸出。起初它可能會令人沮喪,但很快你就會學會設置一些配置選項,這些選項將幫助你用簡單的鍵盤命令對電子郵件進行分類和過濾。
但首先讓我們先發送一封電子郵件。您可以從列表中選擇一封電子郵件回復並按r(回復),或按m(郵件)開始全新電子郵件。
如果選擇發起新消息,Mutt會首先詢問是否想要回到草稿。按y(是)將轉到帳戶中的草稿清單或n(否)創建新電子郵件。 Mutt會提示輸入一個address和一個Subject。
完成後,來到Vim消息編輯器中:
Vim是另一種類似於nano的終端文本編輯器,但具有自己獨特的命令。如果對它一點都不熟悉的話,可能需要參考Vim command cheatsheet,但在本練習中只需要幾個基本命令。
按I(插入)開始輸入信息。完成後,按ESC鍵,然後按wq(寫入並退出)退出Vim。
從這裡按y發送你的電子郵件。你做到了!
Mutt進階
現在你已經可以像專業人員那樣通過命令行發送電子郵件了,讓我們配置Mutt以最好地滿足需求。
使用Mutt的limit命令來過濾電子郵件
開箱即用,Mutt會將收件箱中的每封電子郵件都發回,並且你不希望發生這種情況。Mutt的limit功能可以讓你根據日期,主題,發件人,未讀狀態等等來詢問電子郵件。
要訪問限制,只需在Mutt中按l(這是一個小寫的L)。從這裡開始,你可以通過Mutt各種不同的選項(請注意波浪!):
·~U —返回所有未讀電子郵件
·~B deadline —返回包含特定關鍵字的所有電子郵件,在這種情況下為deadline
·~s pizza —返回具有指定主題的所有電子郵件,在這種情況下為pizza
·~d 01/01/15–01/02/15 —返回MM/DD/YYYY格式的指定日期範圍內發送的電子郵件
這只是一個小示例!要查看所有可用選項以及如何使用它們,請參閱Mutt docs。
為limit命令創建快捷方式
如果有一個長或複雜的limit命令,你不希望每次都輸出完整的命令。例如,我通常喜歡顯示少於7天的電子郵件,並且每次使用Mutt時都必須鍵入l?d
幸運的是,我們可以輕鬆創建宏快捷方式將這些Mutt命令映射到我們機器上的鍵盤命令。讓我們回到.muttrc文件:
nano ~/.muttrc
在自己的電子郵件設置下,配置宏。這是我的示例:
macro index ..
~d
這意味著當我使用Mutt時在鍵盤上按..時,它會通過選項?d
使用自定義命令獲取新郵件
與大多數電子郵件客戶端不同,Mutt沒有附帶「檢查郵件」命令,當進入程序時,它將引入所有新消息。所以讓我們創建自己的命令!
在.muttrc中,添加以下內容:
bind index G imap-fetch-mail
在Mutt中按G(獲取),現在將從IMAP伺服器獲取所有新郵件。
我希望本教程對於任何希望將Gmail集成到其命令行界面的人都很有參考價值。Mutt也可以配置為別的郵件提供商。請參閱Mutt extensive documentation,以便了解更多,並且可以使用它做到令人驚嘆的事情。


※詳解Pwn2Own中價值5萬美金的Firefox瀏覽器漏洞
※加密101系列:如何構建自己的解密工具
TAG:嘶吼RoarTalk |