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. SSH整合(一)hibernate+spring

    1.导入maven节点  <dependencies> //测试用的 <dependency> <groupId>junit</groupId> < ...

  2. as3中去掉字符串两边的空格,换行符

     as3 去掉字符串两边的空格,换行符,方法一  ActionScript Code  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20   pub ...

  3. 5.Redis常用命令:Hash

    我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Age等.如果H ...

  4. Android中的socket本地通讯框架

    一.先分析Native层: 1.C++基类SocketListener: class SocketListener {     int mSock;     const char *mSocketNa ...

  5. Android使用本地广播

    Android本地广播学习中一直被忽略,今天用到了,Mark一下 1.本地广播的定义和普通广播一样 例如 public class WakeTimesBroadcastReceiver extends ...

  6. Sublime text3 设置的中文翻译

    // While you can edit this file, it's best to put your changes in // "User/Preferences.sublime- ...

  7. MyRocks DDL原理

    最近一个日常实例在做DDL过程中,直接把数据库给干趴下了,问题还是比较严重的,于是赶紧排查问题,撸了下crash堆栈和alert日志,发现是在去除唯一约束的场景下,MyRocks存在一个严重的bug, ...

  8. python入门编程之基础

    Python, 是一种面向对象.解释型计算机程序设计语言.Python语法简洁清晰,特色之一是强制用空白符作为语句缩进.Python的设计哲学是"优雅"."明确" ...

  9. Http协议---Hyper Text Transfer Protocol

    HTTP是一个基于TCP/IP通信协议来传递数据(超文本传输协议) 好久木来更新文章了~我又回归了,此刻鼓掌...... 今天就来分享下http协议的小知识,在接口测试中我们最常接触的HTTP协议,那 ...

  10. STM32F0的flash读写

    flash大小64k Rom+8k Ram的大小,stm32f051有64k Rom,总的分为 64页,一页1024byte ,在flash的Rom里面写数据掉电保存,相当于W25q80 uint32 ...