内存监控脚本
[root@lsy script]# cat 内存监控.sh
#!/bin/bash
#xxx 0402
#监控内存
#思路:①利用总值除剩余值得出空闲率
# ②空闲率与给定数值进行比较
#使用对比方法小于
#取出总量
total=`free -h | awk -F "[ ]+" 'NR==2{print$2}' |awk -F "M" 'NR==1{print$1}'`
#取出剩余量
free=`free -h|awk -F "[ ]+" 'NR==2{print$4}'|awk -F "M" 'NR==1{print$1}'`
#得出空闲率
info=`echo "scale=1;$(echo $free)/$(echo $total)*100"|bc -l`
#换算为整数
info02=`echo $info|awk -F "." '{print$1}'`
[ $info02 -lt 50 ] && echo "内存空闲率下降到$info02% 请引起注意"
[root@lsy script]# sh 内存监控.sh
内存空闲率下降到30% 请引起注意
收集系统信息
[root@lsy script]# cat 收集系统信息.sh
#!/bin/bash
#刘世亚 0402
#收集系统信息
name=`echo $HOSTNAME`
#收集主机名
eth0=`hostname -I|awk -F " " '{print$1}'`
eth1=`hostname -I|awk -F " " '{print$2}'`
#收集IP地址
vmware=`lspci -tv|awk -F "[1-9]+" 'NR==6{print$3}'`
#虚拟化平台信息
edition=`cat /etc/redhat-release |awk -F " " '{print$4}'`
#系统版本信息
core=core=`uname -a|awk -F " " '{print$3}'`
#系统内核版本
network=`curl -s cip.cc |awk -F ":" 'NR==1{print$2}'`
#查询公网IP地址
echo "主机名为:$name"
echo "外网IP地址为:$eth0"
echo "内网IP地址:$eth1"
echo "虚拟化平台信息为:$edition"
echo "系统版本信息:$network"
echo "系统内核信息为:$core"
echo "公网IP地址为:$network"
[root@lsy script]# sh 收集系统信息.sh
主机名为:lsy
外网IP地址为:10.0.0.7
内网IP地址:172.16.1.7
虚拟化平台信息为:7.6.1810
系统版本信息: 123.112.21.13
系统内核信息为:core=3.10.0-957.el7.x86_64
公网IP地址为: 123.112.21.13
监控磁盘
[root@lsy script]# cat 监控磁盘.sh
#!/bin/bash
#刘世亚 0402
#监控磁盘使用率
#取值命令 df -Th
#取值方法 awk
#比较给定值 [ -gt 3 ]
info=`df -Th| awk -F "[ ]+" 'NR==2{print $6}'|awk -F "%" '{print $1}'` #取值并赋值给自定义的变量
[ $info -gt 2 ] && echo "磁盘使用率已达到: $info%,请注意清理磁盘空间"
#取出的数值和给定的数值进行比较
[root@lsy script]sh 监控磁盘.sh
磁盘使用率已达到: 4%,请注意清理磁盘空间