mutt发邮件及简单脚本

瞎忙活了一天多 就忙活出来这么点东西 但是也得记下来 免得以后用得上。

linux如果没有mutt可以去http://rpm.pbone.net/ 查找并下载

mutt 发邮件的主要命令:

cat  filename | mutt -s "title" -a attachment_file -c w1@a.com

filename: 文件名字 该文件内容将被邮件作为正文

attachment_file:要作为附件的文件名字 有必要时添加路径

选项:

-a attachment  :指定添加附件

-c 指定副本的收信人地址

-f 指定要载入的邮件文件

-i 将指定文件插入邮件内文中

-s 指定邮件的主题

......上面是常用的选项

报错:

1:

我在发邮件时候查网上资料不用-c 总会报错:

没有已指定的接受者

没差到该报错的相关改正 后添加-c 就没有改错误了

2:

命令执行成功没有报错但是没有收到邮件

在自己的服务器日志上查是因为规则不符做了退信处理

就把postfix的主配置文件修改了 绕过了判断规则的过程

所以在邮件往外部邮箱发送时候如果有收不到的情况很有可能是因为知名服务器的反垃圾反病毒给拦截了

脚本:

vim mutt.sh

#! /bin/bash

var=`ls /root/lyy/test/`

for i in $var

do

cat "hello mail" | mutt -s "testmail" -a $i -c w3@a.com

done

保存退出加权限就可以文件作为邮件附件批量到w3@a.com下了,这样就快速的道带附件的邮件文件而不需要成千上万封邮件手动发送得到带附件的邮件文件。

配置文件说明

配置文件中有两个地方是这次比较关注的地方:

set charset=utf-8

set charset=gb2312

set charset=gbk

等等 是邮件文件的编码类型 一般在linux下用uft-8可以识别

set send_charset="..................."

是按顺序识别邮件内容编码的

问题:

这次邮件的乱码是下载过程中有bug导致的 邮件文件是正常无误的,所以瞎忙了好一阵

export LANG=zh_CN.GB2312 可以试试这个 这次这个字段解决了txt乱码

或者set rfc2047_parameters=yes 但是我这次用没管用 不过主要还是因为下载的问题导致的

如果没有muttrc这个文件,应该在/etc/muttrc有 cp muttre /root/.muttrc  修改时候修改.muttrc即可

mutt配置文件原文:http://leeon.me/a/mutt-muttrc-chinese-configuration-note

#windbeg

003#编辑器 直接在 Mutt 的终端里使用非图形界面的 Emacs (emacs -nw)
004set editor="emacs -nw"
006#设置邮件发送程序
007set sendmail="/usr/bin/msmtp"
009#建立信箱
010set folder="~/Mail"
011set mbox="~/Mail/inbox"
012#set mbox_type=maildir
013set spoolfile="~/Mail/inbox"
014set postponed="~/Mail/postponed"
015set record="~/Mail/sent"
017# 让mutt监视下面几个邮箱,并随时报告新邮件
018mailboxes "=inbox"
019mailboxes "=163"
020mailboxes "=cnc"
021mailboxes "=OA"
024set check_new = yes
025set timeout = 600
027#set alternates="renbin@unicomzj.com" 
028#这是一个格式字符串,用来控制你的index的列表显示。它的缺省定义是
030set index_format="%4C %Z %{%b %d} %-15.15L (%4l) %s"
031#指定你有那些信箱文件。当你按 "c" 切换信箱时,再按 Tab 键,这些信箱就可供你选择
032mailboxes Mailbox sent-mail 
033#这是一个 bool 型变量。它表明你在回信时引用原文是否加入原文的邮件头。
034set header=no 
035#可以设置为 yes, no, ask-yes, 或者 ask-no. 这是说,当你按q退出时,是否提示你(ask-yes,ask-no),
036#还是直接就退出了(yes),还是根本不理你(no)。
037set quit=ask-yes
038#html类型的附件是允许直接通过 .mailcap 浏览的?
039#doc类型的附件通过wvware转成html 浏览
040auto_view text/html application/msword
042#这也是一个提示性变量。它是确定当你退出时,是否提示你把信件从 spool 移动到的 mbox 文件。
043set move=no
044#当 Mutt 用 thread 方式显示时,是否用纯 ascii 表示树状列表。
045set ascii_chars=yes
046#回信时是否包含原文。
047set include
048#回信的引文之前插入那个符号?
049set indent_str="> "
050#设置你自己的邮件头。
051my_hdr From: renbin@unicomzj.com
052#打分
053#新信件+4分,主题包含“通知”的+2,主题包含 “Circulation” +3, 已经标记删除的 -5,上次没有读的 +1,包含 “believe”的 -10(垃圾广告!)。
054score "~N"+4
055score "~s 通知"+2
056score "~s Circulation"+3
057score "~D"-5
058score "~O"+1
059score "~s believe"-10
060#排序方式。
061set sort=score
062#当用 thread 排序方式时,我们对各个 thread 的相对排序顺序。
063set sort_aux=date
064#如果翻到最后,再按往下翻也不会翻到下一封信件
065set pager_stop
066#如果设置,当你按 "r" 回信时,就不会再提示你输入回信地址和主题,直接进入编辑模式。
067set fast_reply
068#当你按 "t" 或者 "D" 之类的标记操作时,是否自动把光标移动到下一封信件。
069set resolve=yes
070#地址簿
071source ~/.mutt.alias
072#当你在 index 里按 "a" 为来信者取别名时,使用哪一个别名文件保存这个别名。
073set alias_file=/home/windbeg/.mutt.alias
074#你发出的邮件保存到那个信箱文件?比如可以像我这样每个月发出的信件放在不同的文件里。
075set record="~/Mail/=sent-mail-`date +%Y-%m`"
076#你的终端支持哪一种编码的显示?这个必须和你的终端编码一样。推荐用utf8
077set charset="utf8"
078#send_charset
079#set send_charset="us-ascii:iso-8859-1:gb2312:utf-8"
080set send_charset="us-ascii:iso-8859-1:gb2312:utf-8"
081#外部程序退出时,是否要求用户按一个键才返回。这在察看某些shell命令输出时是比要的,
082#否则它们一下就消失了。
083set wait_key=yes
084#当你要把信件存到另一个信箱,而这个信箱已经存在时,是否提示附加?
085set noconfirmappend
086#是否把邮件头也放在编辑器里可以修改?
087set edit_headers=no
088#当你在用 pager 看信件时,在 index 留出多少行显示邮件列表?
089set pager_index_lines=4
090#告诉 Mutt 你已经订阅了那些邮件列表(mailing-list).
091#subscribe fvwm@fvwm.org
092  
093#mutt显示日期为中文
094set locale="zh_CN"
095#有些没有设置字符编码时
096charset-hook ^us-ascii$ gb2312
097#Chinaren 等服务器发出来的信件使用了 quoted-printable 的 subject,
098#而且设置编码为 "iso8859-1",这显然是错误的。
099#对付这个错误的办法是把 iso-8859-1 变成 gb2312 的别名
100charset-hook ^iso-8859-1$ gb2312
101# evolution 发过来的 subject 为 utf-8 编码的邮件标题乱码!
102#那就把不是 utf-8 的编码都映射到 gb2312
103charset-hook !utf-8 gb2312
104charset-hook .* gb2312
105  
106# mutt进行pop3收信,当然之前要查看$ mutt -v 编辑情况的确编辑了pop3了。
107# 以后进入mutt按G就可以收信了。
108#set pop_user=xxx@mail.ustc.edu.cn
109#set pop_pass="xxxxxx"
110#set pop_host=202.38.64.8
111#现在不用mutt直接收信了。
112  
113#把mutt发送的from域作为sendmail发送邮件的sender(否则会用user@localdomian)
114set envelope_from=yes

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值