第七章 if条件语句的知识和实践(邮件报警)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第七章 if条件语句的知识和实践(邮件报警)相关的知识,希望对你有一定的参考价值。


范例7-2:

开发一个脚本判断系统剩余内存的大小,如果低于100MB,就邮件报警给系统管理员,并将脚本加入系统定时任务,即每3分钟执行一次。


首先搞定邮件服务,我的centos 7上面没有mail包,所以就下载一个rpm的mail包安装,下来时编辑配置文件:

[[email protected] ~]# tail -n 7 /etc/mail.rc 

set from=***@163.com
set smtp=smtp.163.com
set smtp-auth-user=***
set smtp-auth-password=***
set smtp-auth=login
[[email protected] ~]# 

然后测试邮件服务器是否正常:
[[email protected] ~]# echo "oldboy" | mail -s "cpu" ***@163.com   #好了
#!/bin/bash
men=`free -m | awk 'NR==3 {print $NF}'`
chars="current memory is $men"

if [ $men -lt 3000 ]; then
  echo "$chars" | tee /tmp/messages.txt    #打印并且保存在文件中
  mail -s "`date +%F-%T`-men" [email protected] < /tmp/messages.txt
fi

范例 7-3:分别使用read读入及脚本传参的方式比较两个数字的大小。把前面涉及到的是否为整数以及传参的个数是否按照要求的。

#!/bin/bash
read num
read num1
if [ -z "$num" ]; then
  echo "plz input  currt arges"
  exit 4
fi

if [ -z "$num1" ]; then        #发现这两个不能放一起使用-a连接起来判断,会出现问题。

echo "plz input  currt arges"

exit 5
fi

expr $num + 4 > /dev/null
aa=$?
expr $num1 + 4 > /dev/null
bb=$?

if [ $aa -eq 0 -a $bb -eq 0 ]; then
 if [ $num -lt $num1 ]; then
   echo ""$num"<"$num1""
 else
   echo ""$num">"$num1""
 fi
else
 echo "this is a bad int"
fi


多分支进行判断


以上是关于第七章 if条件语句的知识和实践(邮件报警)的主要内容,如果未能解决你的问题,请参考以下文章

python学习之第七课时--基本条件语句if

linux运维架构之路-shell编程

Shell编程学习

使用jmeter实现接口监控,当接口出错时邮件报警

程序设计基础第七章 伪代码 循环 过程/函数

第七次课