shell脚本实现巡检(centos7)

这里我们用函数实现的个个功能


#!/bin/bash
##系统信息##
sys_check(){
os_type=`uname`
echo "操作系统类型是:$os_type"
os_banben=`cat /etc/redhat-release`
echo "操作系统版本号是:$os_banben"
os_neihe=`uname -r`
echo "操作系统的内核是:$os_neihe"
os_time=`date +%F_%T`
echo "操作系统当前时间是:$os_time"
os_uptime=`uptime | awk '{print $3}'|awk -F , '{print $1}'`
echo "操作系统最后重启时间为:$os_uptime"
os_hostname=`hostname`
echo "操作系统主机名称为:$os_hostname"
}
##网络信息##
net_check(){
net_ip=`ifconfig ens33 | grep broadcast | awk '{print $2}'`
echo "操作系统的ip是:$net_ip"
ping -c1 www.baidu.com >/dev/null
if [ $? -eq 0 ];then
        echo "外网可以连通"
else
        echo "外网连不通,请检查"
fi
RX=`ifconfig ens33 | grep RX |sed -n '1p'|awk '{print $(NF-1)}'|awk -F '(' '{print $2}'`
echo "操作系统流入的量是:$RX"M
TX=`ifconfig ens33 | grep TX |sed -n '1p'|awk '{print $(NF-1)}'|awk -F '(' '{print $2}'`
echo "操作系统流入的量是:$TX"M
}
cpu_check(){
physical_id=`cat /proc/cpuinfo | grep "physical id"|sort|uniq|wc -l`
echo "操作系统cpu物理个数是:$physical_id"
cpu_core=`cat /proc/cpuinfo | grep "cpu cores"|sort|uniq|awk -F ':' '{print $2}'`
echo "操作系统的cpu核心数是:$cpu_core"
cpu_type=`cat /proc/cpuinfo | grep "model name"|sort|uniq|awk -F ':' '{print $2}'`
echo "操作系统的cpu型号是:$cpu_type"
free_total=`free -m | grep Mem|awk '{printf $2}'`
echo "操作系统的内存总大小为:$free_total"
free_used=`free -m | grep Mem|awk '{printf $3}'`
echo "操作系统已使用内存为:$free_used"
free_shengyu=`free -m | grep Mem|awk '{printf $4}'`
echo "操作系统剩余内存为:$free_shengyu"
used_baifen=`echo "scale=2;$free_used/$free_total*100"|bc`
echo "已使用内存百分比是:$used_baifen"%
shengyu_baifen=`echo "scale=2;$free_shengyu/$free_total*100"|bc`
echo "已使用内存百分比是:$shengyu_baifen"%
}
disk_check(){
disk_size=`lsblk | grep -w sda |awk '{print $4}'`
echo "磁盘总量为:$disk_size"
a=($(df -T|egrep -v "tmpfs|文件系统"|awk '{print $5}'))
sum=0
for i in ${a[*]}
do
        let sum=sum+$i
done
shengfree=$[$sum/1024/1024]
echo "剩余磁盘总量为:$shengfree"Gb
}
sys_check
net_check
cpu_check
disk_check


在这里我们写的脚本分为三个板块,其中包括系统信息、网络信息、硬件信息。

首先我们需要编写一个sh结尾的脚本文件

所有的命令都要交给一个变量方便我们执行
uname是查询当前系统
cat /etc/redhat-release 是查看当前系统的版本号的
uname -r 是查看系统内核

shell脚本实现巡检(centos7)_第1张图片以上我们需要保证IP能够连通外网所以我们这里做了一个判断

shell脚本实现巡检(centos7)_第2张图片
这里是我们需要时刻知道我们的服务器流入和流出的流量

以下是执行代码以后的效果

shell脚本实现巡检(centos7)_第3张图片

你可能感兴趣的:(shell脚本)