今天突发奇想,决定不再使用evolution来处理email了,换用一下命令行下的mutt。以前虽然早已闻其大名,但到今天才有勇气去试一下。

先在网上仔细搜了一下mutt的教程,发现要么是过时的东西,要么就是讲得不清楚,决定自己重新整理一下。(不敢期望比其它教程都好;-p)

下面仅以我使用的FC5和gmail为例。;-)

首先你应该清楚mutt所扮演的角色,mutt的设计遵循了Unix的设计哲学──“做一件事,把它做好”。mutt不会编辑邮件,也不会收发邮件,它只是把做这些事的进程有效的结合起来。具体说就是,mutt会把由fetchmail接收来的邮件以可定制的方式呈现给用户,用户编辑时它会调用用户指定好的编辑器(比如:vi或emacs),然后把编辑好的邮件交给sendmail或者其它发送邮件的进程(比如我用的msmtp)来发送。整个过程就完成了。

为了更好的配合mutt,有必要先讲一下ESR编写的fetchmail的使用。首先,按照常规,你需要通过编写配置文档来定制fetchmail的行为。在用户目录下新建一个名为.fetchmailrc的文档,内容大体如下:

defaults

poll pop.gmail.com proto POP3 and options no dns

user ‘YOUR[email protected] there with password ‘YOUR_PASSWORD’ is ‘YOUR_USER_NAME’ here options ssl

keep

mda “/usr/bin/procmail -d YOUR_USER_ID”

把上面的YOUR_USER_NAME替换成你gmail的用户名(非gmail用户也要替换后面的服务器名和上面的pop服务器),YOUR_PASSWORD替换成你的邮箱密码,把YOUR_USER_ID替换成你在你//所用主机//上面的用户名。

编写完.fetchmailrc文档之后还要用chmod把它权限设为600。

试试用下面的命令测试一下你上面的配置:

fetchmail -c

如果配置OK的话,你以后就可以使用_fetchmail -d0 -v来接收邮件了。

如果你上面收到邮件的话(没收到的话就自己发一封;-p),现在启动mutt试试。(如果没有mutt的话,到mutt官方主页上下载一个最新的。注意:如果你要让mutt本身也有收邮件功能的话,编译时请指明。)进去后是不是就看到收到的email了?mutt的按键风格和vi类似,追求用最少的按键完成最多的功能。Enter键是阅读,i键退出阅读接口,如果有多于一封邮件的话,j上选中下面的一封,而k是选中下面的,如果还有更多的话,按PageUp和PageDown来进行翻页。和其它多数进程一样,按q键是退出mutt。

在进行进一步介绍mutt之前,我们先要看一下怎么发送邮件以及怎么定制mutt。

如前所述,发送邮件可以使用sendmail或者msmtp,我用的是后者(msmtp的官方主页是:http://msmtp.sourceforge.net/)。它的配置文档你应该能猜到了,也是在用户目录下,名为.msmtprc。设置如下:

account gmail

host smtp.gmail.com

from YOURMAILBOX

tls on

auth on

port 587

user YOUR_MAILBOX

password YOUR_PASSWORD

把里面的YOUR_MAILBOX替换成你的gmail邮箱,把YOUR_PASSWORD替换为你的密码即可。

mutt的配置文档有两个,一个是系统的,一个是用户的。系统配置文档是/etc/Muttrc,里面是设置mutt的一些配色等,而用户配置文档是为用户所用的,指定自己想要的一些特性,它是在用户目录下,名为.muttrc,内容大体如下:

set alternates=”YOUR_MAILBOX”

set to_chars=”+TCFL”

set index_format=”%4C %Z %{%b %d} %-15.15L (%41) %s”

mailboxes Mailbox sent-mail

set header=yes

set quit=ask-yes

auto_view text/html

set move=yes

set include

set indent_str=”

my_hdr From: YOUR_MAILBOX

set sort=date

set charset="utf-8"

set send_charset="us-ascii:utf-8"

set editor="vi"

set sendmail="/usr/local/bin/msmtp -a gmail"

set pop_last=yes

set pop_user=YOUR_MAILBOX

set pop_pass="YOUR_PASSWORD"

set pop_host="pops://pop.gmail.com"

同样,对大写的内容做相应的替换即可。

我们逐行来看:

set alternates=”YOUR_MAILBOX”

你有可能收到信件的地址。

set to_chars=”+TCFL”

设置$to_chars变量,一般就为”+TCFL”。

set index_format=”%4C %Z %{%b %d} %-15.15L (%41) %s”

格式字符串,用来控制index的列表显示。

mailboxes Mailbox sent-mail

指定你有哪些信箱文档。

set header=yes

显示邮件头。

set quit=ask-yes

退出时询问,默认是yes。

auto_view text/html

自动浏览text/html格式的邮件。

set move=yes

提示你把信件从 /var/spool移动到的邮箱文档。

set include

回复时引用原文。

set indent_str=”

回信时以”

my_hdr From: YOUR_MAILBOX

设置你自己的邮件头。

set sort=date

按日期对邮件进行排序。

set charset=”utf-8”

终端支持的那一种编码的显示。

set send_charset=”us-ascii:utf-8”

设置发送邮件的编码,先是ASCII,如果不行的话会选择UTF-8。

set editor=”vi”

指定编辑器是vi,当然了,也可以是其它你喜欢的。

set sendmail=”/usr/local/bin/msmtp -a gmail”

设置发送邮件的进程是msmtp,-a选项指定账户,就是.msmtprc中account后面指定的内容,默认的是default。

如果你的mutt编译时带了pop功能,你可以加上下面几行:

set pop_last=yes

set pop_user=YOUR_MAILBOX

set pop_pass=”YOUR_PASSWORD”

set pop_host=”pops://pop.gmail.com”

OK!mutt的配置搞定了,现在你可以用mutt发一封邮件试试。进入mutt以后按_m键,或者干脆直接在mutt选项中指定:

mutt -s “This is subject.” [email protected] > contents.txt

好了,mutt的介绍就到此为止了。更多的mutt介绍请参考[2]。试试mutt,是不是很酷呢?

参考资料:

[1] http://corsairdoom.blogspot.com/2006/10/mutt.html

[2] http://www.ucolick.org/~lharden/learnmutt.html

[3] http://learn.tsinghua.edu.cn:8080/2001315450/mutt_frame.html

linux mutt dns,使用mutt处理电子邮件相关推荐

  1. linux使用MSMTP和Mutt从命令行发送电子邮件

    概述 在本教程中,我们将学习如何安装 MSMTP 和 Mutt.我们将使用 MSMTP 将我们的电子邮件转发到 QQ邮箱服务器再转发到其他邮箱 mutt - 用户代理客户端 (MUTT - WIKI百 ...

  2. Linux中使用Msmtp+mutt+shell自动发邮件程序安装说明

    Linux中使用Msmtp+mutt+shell自动发邮件程序安装说明 ------by liyoujia 环境: 需要用到mutt 和 msmtp 这两款软件 Mutt:linux初始化安装的时候自 ...

  3. linux下mutt发送邮件,Linux下使用msmtp+mutt发送邮件

    环境:Red Hat 4.1.2-46:msmtp版本:msmtp-1.4.16.tar.b:mutt版本:Mutt 1.4.2.2i (2006-07-14) 总结:这种方式可以实现带附件邮件,注意 ...

  4. linux mutt接收邮件,Linux下安装使用Mutt邮件客户端并配置邮件警报功能

    0.在正式安装Mutt之前先检查一下两个安全组件. OPENSSL: 复制代码 代码如下: openssl version -a #检查安装及版本信息 SASL(系统一般已经自带): 复制代码 代码如 ...

  5. linux笔记 3-4 SMTP,.配置电子邮件传输

    ***************4.配置电子邮件传输*****************##1.基本电子邮件配置##配置dns服务,添加MX记录两台服务器分别配置 /etc/postfix/main.cf ...

  6. linux本地dns文件,Linux本地dns配置文件详解

    Linux本地dns配置文件详解 我们在linux下设置dns时,一般都是在/etc/resolv.conf文件进行设置,一般也就设置几条nameserver而已,其实该文件还是可以根据选项进行优化的 ...

  7. 云服务器dns配置文件,linux服务器dns配置文件

    linux服务器dns配置文件 内容精选 换一换 裸金属服务器硬件损坏,SDI卡损坏等原因,导致裸金属服务器无法正常使用时,您可以申请裸金属服务器重建功能.裸金属服务器重建过程不是自动化的,您需要联系 ...

  8. 如何为linux服务器配置DNS解析?

    点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 来源:编程三分钟 ID:coding3min 作者:小熊爱编程 本文建立在已经搭建好DNS服务 ...

  9. Linux的DNS配置2-主从服务器

    1.实验背景 之前写了Linux的DNS配置1-DNS入门,其中只用了一台DNS服务器,但一般在大型网络中,都要通过配置辅助DNS服务器可以提高DNS服务的可靠性,本次实验即配置DNS主从服务器 2. ...

最新文章

  1. 镁的提取及应用_电熔镁炉、电熔镁以及菱镁耐火材料的发展及简介
  2. CVPR 2021大奖出炉!何恺明获最佳论文提名,第一届Thomas S. Huang 纪念奖颁发
  3. .net每隔几秒去请求接口 怎么做_C# .net 中 Timeout 的处理及遇到的问题
  4. 在C++ Builder中用socket api来写网络通讯程序(同时支持TCP和UDP协议)
  5. XML学习笔记--导航
  6. matlab程序员得浪漫,程序员的浪漫:教你如何用MATLAB向女生表白
  7. 高仿快递100--实战之RadioGroup和RadioButton应用
  8. python gridsearch_Python超参数自动搜索模块GridSearchCV上手
  9. ansys icem cfd网格划分技术实例详解_详解航空燃油滑油3D打印热交换器设计流程...
  10. C++之explicit构造函数
  11. android测试tf卡读写速度,手机TF卡速度的研究经验sandisk/金士顿 C2,C4,C6测速软件测速图数据...
  12. Unity3D - 关于ASTC压缩格式的一些资料搜集
  13. C语言常用转换函数实现原理
  14. Python函数定义的高级用法
  15. GIS开发进阶之路(十三) Activator和new的区别、GP工具输入参数问题、写入JObject到json文件、ArcGIS Server REST API、动态规划、贪心算法
  16. iOS平台游戏安全之IPA破解原理及防御
  17. 计算机网络的社会环境分析_计算机网络的功能和应用
  18. 如何建立一个真实光栅结构的光导
  19. Springboot 精髓
  20. Windows10设置自动重启或定时重启的方法

热门文章

  1. 从零开始学java-(三)for ZCL:java基本数据类型
  2. World Finals 2017爆OJ记
  3. asp系统转换php系统时间函数,ASP_ASP中的时间函数大全 时间操作函数,Date 函数 描述:返回当前系统日 - phpStudy...
  4. 卓训教育:用好“情绪三明治”,让孩子从沮丧到乐观
  5. 曼彻斯特编码,差分曼彻斯特编码和NRZI编码
  6. android-揭秘热修复黑科技
  7. harris算法 matlab,harris快速算法
  8. 用 Java 实现天天酷跑(附源码),这个真的有点强了!
  9. Spring Boot集成pagehelper分页插件
  10. 国内EDA企业大盘点