首页 > 运维 > Linux > mysql查询结果发送到邮箱
2019
12-04

mysql查询结果发送到邮箱

#mail配置请移步 这里 传送门

1.需求

领导每天要查看谁登陆过系统,就是要看公司系统的用户登录情况。要求以邮件方式发给他。

思路:mysql查询出结果,直接通过mailx邮箱发送给指定邮箱

mysql查询出数据格式如下

问题就在于发送到企业邮箱,老板是用钉钉打开的,就是在钉钉客户端接收到的邮件,然后这个格式就乱了(比较严重),打开就这样了(老板觉得,没对齐,看的他委屈了)

于是怎么办呢,那换个法子呗。

2. 有3个办法

<1>.使用mysql 函数 LPAD 和 RPAD 补位

具体填充多少,定义长度len多少你需要根据自身情况进行决定。下面提供解决我自身问题脚本

发送邮件内容

填充前

shell显示
邮件显示

填充后

shell显示
邮件显示

可见格式已经对齐了

<2>,mysql导出结果为html,mail发送html到邮箱(这种方式普通邮箱没问题,企业邮箱有些不支持,可能要开启某些东西。)

我的脚本

发送后查看邮箱

另外啊,如果发送html企业邮箱不支持,可以试试用sendmail发送或者fastmail,方式都是一样的。

<3.>先导出为excle再以txt格式读取发送

我的脚本

邮箱显示结果

如果你使用钉钉客户端邮箱来接收查看 ,抱歉那傻逼会自动干掉格式。就一傻逼软件

最后编辑:
作者:shooter
这个作者貌似有点懒,什么都没有留下。