一、if单分支结构
准备知识:
查看系统内存:free指令 -m表示以MB的大小显示
mem是系统内存,swap是虚拟内存,需要将系统剩余内存大小过滤出来,之后与100M对比
也可以用awk指令
使用正则表达式过滤,以空格(不管几个)作为分隔符分割,取第四个字段
发邮件:
安装邮件服务器服务端:
启动邮件服务器:
-s指定标题,之后跟用户名,回车之后输入内容,交互式方式
脚本里面不能交互式,所以我们使用echo
做题:
直接写10是每个小时的第10分,所以是*/10,表示每十分钟
判断是不是root有多种方式:
二、if双分支结构
用systemctl status 判断进程状态,如果状态码是0则说明进程运行,如果非0,没有运行
也可以使用ps -ef,进程运行至少要有两行输出,进程没有运行过滤时grep的也会输出。可以用grep -v grep将grep自己过滤掉,之后用wc -l显示有多少行输出。0就是进程没有运行,非0就是进程运行
使用systemctl status:
使用ps -ef:
-c指定发几个包,-W表示超时时间timeout,1表示1s,后面跟要拼哪个主机,标准输出和标准错误输出写到黑洞
三、if多分支结构
过滤vendor_id,可能有多行输出,去重,用awk指令,-F指定分隔符,显示最后一个字段($NF),或者第二个字段($2)也是一样的,也可以用cut,结果有空格,可以用下面的space匹配
Space表示空格,*表示出现0~多次匹配,$表示以什么结尾
四、多条件判断语句case