Linux发送邮件命令mail,mutt
邮件常常是Linux下监控报警手段之一。Linux下的mail命令可以方便,快速的完成发送邮件。
1. Linux发邮件2种常见客户端命令
1.1 mail命令(推荐)
语法:
- 无邮件正文
- mail -s "Title" 123456789@qq.com
- 有邮件正文
- mial -s "Title" 123456789@qq.com </etc/hosts
- echo "Contents"| mail -s "Title" 123456789@qq.com
- cat /etc/hosts |mail -s "Title" 123456789@qq.com
- 带附件的邮件
- mail -s "Title" 123456789@qq.com -a /etc/hosts2
参数:
- -s 主题,邮件标题
- -a attach file添加附件
- -c 给多个用户发送邮件
查看是否安装mail服务:
[root@nfs-31 scripts]# rpm -qa mailx
mailx-12.4-10.el6_10.x86_64
如未安装:
yum install mailx -y
配置文件:/etc/mail.rc
示例:在/etc/mail.rc文件尾加上如下配置
因为163的设置相对简单些,以163邮箱为例,QQ邮箱等,其他邮箱因为安全等因素,需要设置的比较多,具体的可以搞下,本文不作重点。
set from=usr1@163.com
set smtp=smtp.163.com
set smtp-auth-user=usr1
set smtp-auth-password=邮箱密码
set smtp-auth=login
参数说明:
from 是发送的邮件地址
smtp 是发生的外部smtp服务器地址
smtp-auth-user 是外部smtp服务器认证的用户名
smtp-auth-password 密码
smtp-auth 认证方式
发送邮件测试:
echo "Content" | mail -s "Title" dongjunjie@cmcm.com
配置文件/var/spool/mail/[用户名]
查看所有的邮件信息
1.2 mutt命令
语法:
- 无邮件正文
- mutt -s "Title" 123456789@qq.com
- 有邮件正文
- mutt -s "Title" 123456789@qq.com </etc/hosts
- echo "Contents"| mutt -s "Title" 123456789@qq.com
- cat /etc/hosts |mutt -s "Title" 123456789@qq.com
- 带附件的邮件
- mutt -s "Title" 123456789@qq.com -a /etc/hosts2
例如:定期删除脚本
#!/bin/sh
# 2019-12-09
# by zoe
# 轮询删除java日志,只保留7天日志
MailContent = /dev/shm/mailContent
LogFile = /dev/shm/cleanJavaLog.log
LogDir = /home/java/java_*/log
MailList = "system@okoo.net" echo "轮询删除java日志,只保留7天日志,详情请查看邮件!删除日志:`date +%Y%m%d`" >$MailContent if [ -n "$LogDir" ];then
find $LogDir -type f -mtime +7 > $LogFile 2>&1
find $LogDir -type f -mtime +7 -delete > $LogFile 2>&1
mutt -s "Clean the java log 7 days ago" $MailList -a $LogFile<$MailContent
else
echo "删除日志失败,log目录不存在"|mutt -s "Clean the java log Wrong" $MailList
fi
2. 邮件发送原理

Linux本地常见邮件服务有:
CentOS 5 默认使用sendmail邮件服务,开启方式为/etc/init.d/sedmail start
CentOS 6 默认使用postfix邮件服务,开启方式为/etc/init.d/postfix start
2.2 配置mail使用外部SMTP发邮件
通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail/postfix等内部邮件服务而用外部的smtp服务器发送邮件的目的:
- 修改/etc/mail.rc配置文件,配置信息放在最后
- set from=usr1@163.com smtp=smtp.163.com smtp-auth-user=usr1 smtp-auth-password=123456 smtp-auth=login
Linux发送邮件命令mail,mutt的更多相关文章
- Linux基础命令---mail邮件管理程序
mail mail是一个邮件的管理程序,可以用来发送或者接收邮件. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora. 1.语法 mail [选项] ...
- Linux下使用mail命令发送邮件
因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...
- Linux下使用mail发送邮件
邮件常常是Linux下监控报警手段之一.Linux下的mail命令可以方便,快速的完成发送邮件.下面以CentOS为例 1.安装 [root@vm8028 ~]# mail -bash: mail: ...
- 在Linux系统下mail命令的用法
在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...
- linux全部命令
linux全部命令 一.安装和登陆命令1.进入图形界面startx 2.进入图形界面init 5 3.进入字符界面init 3 4.登陆login 5.关机poweroff-p 关闭机器的时候关闭电源 ...
- Linux常用命令速查备忘
Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...
- linux常用命令加实例大全
目 录引言 1一.安装和登录 2(一) login 2(二) shutdown 2(三) halt 3(四) reboot 3(五) ...
- 一个linux常见命令的列表
这是一个linux常见命令的列表. 那些有• 标记的条目,你可以直接拷贝到终端上而不需要任何修改,因此你最好开一个终端边读边剪切&拷贝. 所有的命令已在Fedora和Ubuntu下做了测试 命 ...
- Linux系列教程(九)——Linux常用命令之网络和关机重启命令
前一篇博客我们讲解了Linux压缩和解压缩命令,使用的最多的是tar命令,因为现在很多源码包都是.tar.gz的格式,通过 tar -zcvf 能完成解压.然后对于.zip格式的文件,使用gunzip ...
随机推荐
- Vue设置路由跳转的两种方法: <router-link :to="..."> 和router.push(...)
一.<router-link :to="..."> to里的值可以是一个字符串路径,或者一个描述地址的对象.例如: // 字符串 <router-link to= ...
- 1042 Shuffling Machine (20分)(水)
Shuffling is a procedure used to randomize a deck of playing cards. Because standard shuffling techn ...
- 存储机制 cookie session jwt token
cookieCookie的诞生 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的.Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用.比如判断用户是否是第一次访问网 ...
- Ansible Playbook 变量与 register 详解
ansible 定义变量方式与[多层]变量引用,以及 register 详解 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录 ...
- 最小生成树算法【图解】--一文带你理解什么是Prim算法和Kruskal算法
假设以下情景,有一块木板,板上钉上了一些钉子,这些钉子可以由一些细绳连接起来.假设每个钉子可以通过一根或者多根细绳连接起来,那么一定存在这样的情况,即用最少的细绳把所有钉子连接起来. 更为实际的情景是 ...
- "格式化的文本"组件:<span> —— 快应用原生组件
 `<template> <div class="container"> <text><span class="success ...
- 差分数组&&定义&&使用方法&&与线段树的区别
**1.定义**对于一个有n个元素的数组a[n],我们令a[i]-a[i-1]=d[i],且d[1]=a[1]-0=a[1];那么我们将d[i]称为**差分数组**---即记录数组中的每项元素与前一项 ...
- 解决idea导入maven项目缺少jar包的问题
之前一直用的elipse,现在用idea不熟悉,这里记录一下.这里以idea2017为例. 导入elipse的maven项目,提示缺少jar包,肯定是idea没有给你导包. 第一步,首先确认自己的id ...
- vueThink框架搭建与填坑(new)
自己跟着官网搭建vueThink框架,发现github上文档有很多坑.所以总结一下(仅针对WIN端下载使用) 1.安装node.js 前端部分是基于node.js上运行的,所以必须先安装node.js ...
- 数据结构和算法(Golang实现)(10)基础知识-算法复杂度主方法
算法复杂度主方法 有时候,我们要评估一个算法的复杂度,但是算法被分散为几个递归的子问题,这样评估起来很难,有一个数学公式可以很快地评估出来. 一.复杂度主方法 主方法,也可以叫主定理.对于那些用分治法 ...