定期统计某种数据,并把统计结果自动mail发出,统计结果mail发出mutt确实是个好东


把统计结果自动mail发出,用到了mutt,mutt安装很简单:yuminstallmutt,安装后就可以使用。

mutt确实是个好东西,可以不启动sendmail或postfix的情况下发邮件,同时比系统自带的mail好用多了。

在linux5下mutt的语法是:

echo"hello" | mutt-atest.txt-s"date"admin@test.com

正文附件主题收件人

在linux6下mutt的语法是

echo"hello" | mutt-atest.txt-s"date"--admin@test.com

正文附件 主题收件人

查看mutt帮助:mutt-h

修改发件人信息(为了避免root@主机名.主机域名这种发件人形式当做垃圾邮件)

在需要发邮件的用户下

建立以下文件

vi~/.muttrc

setenvelope_from=yes

set

setrealname="yourname"

setuse_from=yes

#如果收到的邮件乱码,设置以下信息


setcharset="utf-8"


setrfc2047_parameters=yes

定期统计的存储过程略。

以下是利用shell实现把统计结果自动发出的脚本:

#!/bin/bash


source/home/oracle/.bash_profile


cd/home/oracle/zhangwz/


rm-rflog

sqlplus-szhangwz/******<<EOF>>log


setfeedoff

--执行一下过程,把结果放到表losscall中


execp_losscall;


--把losscall结果放到1.txt中


setlines400;


setpages9000;


spool1.txt


selectrownumsn,losscall.*fromlosscall;


spooloff;


exit


EOF

filename=`date+%Y%m%d-%H%M`


sed'1d'1.txt>>$filename.csv


rm-rf1.txt

hour=`date|cut-c18-20`


if[$hour-eq9]


then


echo"XX,您好:


附件是昨天16:30到今天8点的呼损电话。"|mutt-a$filename.csv-s"呼损电话"zhangwz@xx.net


elif[$hour-eq13]


then


echo"XX,您好:


附件是今天8:00到今天12:00的呼损电话。"|mutt-a$filename.csv-s"呼损电话"zhangwz@xx.net


else


echo"XX,您好:


附件是今天12:00到今天16:30的呼损电话。"|mutt-a$filename.csv-s"呼损电话"zhangwz@xx.net


fi

rm-rf*.csv

相关内容

    暂无相关文章