linux版本:CentOS  6.7        //可以使用lsb_release -a查看

一、修改/etc/mail.rc

set from=123456@qq.com     //你自己的真实邮箱地址
set smtp=smtp.exmail.qq.com //在邮箱设置,客户端设置,设置方法,发送服务器里
set smtp-auth-user=123456@qq.com //自己邮箱真实地址
set smtp-auth-password=123456 //自己邮箱密码
set smtp-auth=login
:wq  
重启postfix服务

二、到这里已经实现实现外部邮箱发送mail了,可以命令行输入

echo "Test Mail" | mail -s "Test"  123456@qq.com

########################################################################

也可以写脚本:

#!/bin/bash
user="
目标1 123456789@qq.com
目标2 123456789@163.com
……
"
userlist=`echo -e "${user}" | awk '{print $2}'`
echo $userlist
mail -v -s "测试邮件" $userlist < test.txt
:wq 

其中:

-v 显示详细信息

-s 邮件标题

test.txt     是你要输入邮件的内容

然后crontab -e 编辑计划任务,就可以实现定时发送邮件啦!

如果发送的邮件是tcmime.874.874.1356.bin这样的附件格式:

yum -y install dos2unix   #安装dos2unix转换工具

dos2unix -k test.txt     #解决发送内容变为附件问题,可在脚本中加入

解决中文乱码问题:

在脚本中加入:#export LANG=zh_CN.UTF-8

附件:/etc/postfix/main.cf的主要参数:

参数        	作用
myhostname 邮局系统的主机名。
mydomain 邮局系统的域名。
myorigin 从本机寄出邮件的域名名称。
inet_interfaces 监听的网卡接口。
mydestination 可接收邮件的主机名或域名。
mynetworks 设置可转发那些主机的邮件。
relay_domains 设置可转发那些网域的邮件

使用Zabbix服务端本地邮箱账号发送邮件  

一、安装sendmail或者postfix

yum install sendmail #安装

service sendmail start #启动

chkconfig sendmail on #设置开机启动

yum install postfix

service postfix start

chkconfig postfix on

CentOS 5.x 默认已经安装好sendmail

CentOS 6.x 默认已经安装好postfix

sendmail和postfix只需要安装一个即可并开启服务即可。

二、安装邮件发送工具mailx

1、yum安装

yum -y install mailx #安装

CentOS 5.x 编译安装mailx,直接yum安装的mailx版本太旧,使用外部邮件发送可能会有问题。

yum remove mailx #卸载系统自带的旧版mailx

2、编译安装

下载mailx:

http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2

tar jxvf mailx-12.4.tar.bz2 #解压

cd mailx-12.4 #进入目录

make #编译

make install UCBINSTALL=/usr/bin/install #安装

ln -s /usr/local/bin/mailx /bin/mail #创建mailx到mail的软连接

ln -s /etc/nail.rc /etc/mail.rc #创建mailx配置文件软连接

whereis mailx #查看安装路径

mailx -V #查看版本信息

echo "zabbix test mail" |mail -s "zabbix" xxx@163.com

#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:xxx@163.com

  

  

  

  

shell群发邮件脚本的更多相关文章

  1. shell及脚本4——shell script

    一.格式 1.1 开头 必须以 "# !/bin/bash"  开头,告诉系统这是一个bash shell脚本.注意#与!中间有空格. 二.语法 2.1 数值运算 可以用decla ...

  2. 【Telnet】使用Telnet协议连接到远程Shell执行脚本

    介绍 本文介绍如何通过Telnet协议连接到远程Shell,执行脚本,并获取执行结果: 相关文章: <[Jsch]使用SSH协议连接到远程Shell执行脚本>http://www.cnbl ...

  3. shell自动计算脚本

    shell自动计算脚本 #!/bin/bash echo $(($)) [root@bogon ~]# sh b.sh 123+123246 let用户声明这个操作是要计算,后者的效率更高 (expr ...

  4. Shell菜单脚本

    今天在这儿给大家分享一个我简单编写的Shell菜单脚本,傻瓜式的人机交互,人人都可以操作linux. #!/bin/sh #Shell菜单演示 function menu () { cat <& ...

  5. shell常见脚本30例

    shell常见脚本30例 author:headsen chen  2017-10-19  10:12:12 本文原素材出自网上,特此申明.有些地方加入我自己的改动 常见的30例shell脚本 1.用 ...

  6. shell常用脚本

    shell常用脚本 author:headsen chen  2017-10-17 15:36:17 个人原创,转载请注明,否则依法追究法律责任 1,vim  name.grep.sh 2,cat   ...

  7. 一篇关于Maven项目的jar包Shell启动脚本

    使用Maven作为项目jar包依赖的管理,常常会遇到命令行启动,笔者也是哥菜鸟,在做微服务,以及服务器端开发的过程中,常常会遇到项目的启动需要使用main方法,笔者潜心的研究了很多博客,发现大多写的都 ...

  8. Linux shell编写脚本部署pxe网络装机

    Linux shell编写脚本部署pxe网络装机 人工安装配置,Linux PXE无人值守网络装机  https://www.cnblogs.com/yuzly/p/10582254.html 脚本实 ...

  9. 使用shell解析脚本依赖关系,并自动补数

    将脚本依赖关系放到表中 使用shell解析脚本依赖关系,递归的计算各个脚本. #!/bin/bash # dm 补数 basepath=$(cd ``; pwd) cd $basepath sourc ...

随机推荐

  1. 20155323 2016-2017-2 《Java程序设计》第5周学习总结

    20155323 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 异常处理 提供两种异常处理机制:捕获异常和声明抛弃异常. 捕获异常:在Java程序运行过程中 ...

  2. 手机自动化测试:Appium代码之Logger

    手机自动化测试:Appium代码之Logger   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest推出手机自动化测 ...

  3. 数据库习题(oracle)

    学生表 Student 字段值分别是 Sid ,Sname ,Sage ,Ssex 教师表 Teacher 字段值分别是 Tid ,Tname 课程表 Course 字段值分别是Cid ,Cname ...

  4. 23(java/io/data_io)

    package test_ppt;import java.io.*;public class test_ppt{ public static void main(String args[]) thro ...

  5. C++命名空间的解释 【转】

    使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突.在C++中,变量.函数和类都是大量存在的.如果没有命名空间,这些变量.函数.类的名称将都存在于全局命名空间中,会导致很多冲突.比如,如果我 ...

  6. 给 endv 取个好名字有赏!

    给 endv 取个好名字有赏! 直接回复即可 给 endv 取个好名字,拆分原则 endv = endv endv = end+v endv = en+d+v endv = en+dv endv = ...

  7. JS&Jquery中的遍历

    JavaScript中的遍历: 1.for 遍历 var anArray = ['one','two']; for(var n = 0; n < anArray.length; n++) {   ...

  8. jQuery插件制作

    模板:(function($){ $.fn.plugins=function(options){ var defaults = { } var options = $.extend(defaults, ...

  9. elasticsearch系列(一) 术语

    elasticsearch(以下简称es)是一款开源的搜索引擎,基于apach lucene.最近在做nlp的时候顺便研究一下. 下面是官方列举的术语解释 Near Realtime 接近实时的查询, ...

  10. 软件工程工具学习(1)---Visio

    要给15级软件工程上机了.开个系列记录软件工程开发过程中所会用到的一些工具的学习. 第一篇---软件分析与设计工具 Microsoft Visio Visio 介绍 1.Visio是一款矢量图形与图标 ...