Linux mail命令发送网站状态邮件

文章目录

  • 一、安装mail工具
  • 二、使用curl命令访问服务器
  • 三、使用mail命令发送服务器的状态信息

一、安装mail工具

安装环境

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core)
yum install -y mailx 

安装完成后配置mail.rc文件

vi /etc/mail.rc

在文件末尾加上下列配置

set from=[email protected]     	#发件人的邮箱
set smtp="smtp.qq.com"			#smtp服务器地址
set smtp-auth-user="[email protected]"		#发件人的邮箱地址
set smtp-auth-password="pwaaancczcrbgbg"	#发件人的邮箱smtp授权码
set smtp-auth=login				#login登录

保存退出,重启服务。

systemctl restart postfix.service 	 #重启服务

二、使用curl命令访问服务器

访问百度网址,并返回状态码

curl -I -m 10 -o /dev/null -s -w %{http_code}  https://www.baidu.com/
或
curl -I -s www.baidu.com |grep 'HTTP/1.1'|awk '{print $2}'

正常返回码为:200

为了调取返回值方便,我们可以将curl的返回值存入root下的d.txt

curl -I -m 10 -o /dev/null -s -w %{http_code}  https://www.baidu.com/ > /root/d.txt

三、使用mail命令发送服务器的状态信息

使用mail命令发送服务器的信息

mail -s "服务器信息" [email protected] < /root/d.txt 

-s “服务器信息” :邮件的主题名称
[email protected]:目标邮箱
< /root/d.txt :提取 /root/d.txt 内容作为邮件内容

你可能感兴趣的:(Shell,Linux运维)