脚本邮件发送文件代码

Shell脚本实现自动发送邮件的例子。

1、编辑用户Home目录下的.muttrc文件,设置发信环境。

# cat /root/.muttrc
set envelope_from=yes
set from=owinux@sina.cn
set realname="Owinux"
set use_from=yes
set rfc2047_parameters=yes
set charset="utf-8"

2、发信脚本

# cat automail.sh
#!/bin/sh
# automail.sh
DIR=/root/owinux
mailcontent=$DIR/mailcontent
> "$mailcontent"
echo -e "owinux,您好!\n" >> $mailcontent
echo -e "\t附件为 `date +%Y-%m-%d` 设备日检报告,敬请查收。" >> $mailcontent
cat mailcontent | /usr/bin/mutt -s "设备日检报告" -a /root/owinux/report.xls owinux@126.com -c owinux@yeah.net -c owinux@sina.com

3、简要说明

-s:指定主题
-a:附件
-c:抄送,需要抄送多人的话,须使用多个 -c 选项

使用上面的发信环境可以保证在页面查看邮件的时候,附件名不出现乱码。
其中 .muttrc 的 “set from”可以随便设置,可以是不存在的邮箱地址,当然正确的最好。

比如:

set from=abc@owinux.com

侵删转自:脚本之家


修改Linux中发送邮件中附件大小的限制

方法一:

在命令中设定postfix的message_size_limit值 (但系统重启后会失效)

postconf -e "message_size_limit = 20480000"     //注意配置文件中的mailbox_size_limit需要比message_size_limit大

方法二:

永久变更,直接修改配置文件

find / -name main.cf
/usr/lib/postfix/main.cf
/etc/postfix/main.cf
然后编辑 
vim /etc/postfix/main.cf 修改或添加message_size_limit项 (注意它和mailbox_size_limit 的区别)

两种方法修改后,都务必重启postfix服务.

service postfix restart

侵删转自:博客园


centos通过sendmail发送邮件的配置过程。

一、安装sendmail与mail

1、安装sendmail:

1) centos下可以安装命令:yum -y install sendmail

2) 安装完后启动sendmail命令:service sendmail start

2、安装mail

安装命令:yum install -y mailx

二、发送邮件

1、通过文件内容发送

发送命令:mail -s ‘mail test’ xxx@yyy.com < con.txt (”mail test”为邮件主题,xxx@yyy.com为收件人邮箱,con.txt保存邮件内容)

2、通过管道符直接发送

发送命令:echo “this is my test mail” | mail -s ‘mail test’ xxx@yyy.com

三、设置发件人信息

上述发送邮件默认会使用linux当前登录用户信,通常会被当成垃圾邮件,指定发件人邮箱信息命令:vi /etc/mail.rc,编辑内容如:

set from=username@126.com
set smtp=smtp.126.com
set smtp-auth-user=username
set smtp-auth-password=password
set smtp-auth=login

注意配置中的smtp-auth-password不是邮箱登录密码,是邮箱服务器开启smtp的授权码,每个邮箱开启授权码操作不同(网易126邮箱开启菜单:设置-> 客户端授权密码)。

侵删转自:博客园