你的位置:首页 > 操作系统

[操作系统]linux系统监控shell脚本


代码如下,实现了Linux系统的一些常见的监控变量,分享给大家@.·.@

#=============================##Filename=system_monitor.sh#Author:foxsir#Date:2016-02-15#=============================##!/bin/shclearif [[ $# -eq 0 ]]then#Define Variable Reset_terminal  Reset_terminal=$(tput sgr0)#Check OS Type  OS=$(uname -o)  echo -e '\E[36m' "Operating System Type :" $Reset_terminal $OS#Check OS Realease Version And Name  OS_name=$(cat /etc/issue | grep "Server")  echo -e '\E[36m' "Operating System Realease Version :" $Reset_terminal $OS_name#Check Architecture  Architecture=$(uname -m)  echo -e '\E[36m' "Operating System Architecture :" $Reset_terminal $Architecture#Check Kernel Realease  Kernel_Realease=$(uname -r)  echo -e '\E[36m' "Operating System Kernel Realease :" $Reset_terminal $Kernel_Realease#Check Hostname  Hostname=$(hostname)  echo -e '\E[36m' "Operating System Hostname :" $Reset_terminal $Hostname#Check Internal IP  Internal_IP=$(hostname -I)  echo -e '\E[36m' "Operating System Internal IP :" $Reset_terminal $Internal_IP#Check External IP  External_IP=$(curl -s http://ipecho.net/plain)  echo -e '\E[36m' "Operating System External IP :" $Reset_terminal $External_IP#Check DNS  DNS=$(cat /etc/resolv.conf | grep "/<nameserver[ ]+"|awk '{print $NF}')  echo -e '\E[36m' "Operating System DNS :" $Reset_terminal $DNS#Check if connected To Internet Or Not  ping -c2 www.baidu.com &>/dev/null && echo -e '\E[36m' "Internet : Connected" || echo '\E[36m' "Internet : Failed"#Check Logged In Users  who > /tmp/who  echo -e '\E[36m' "Operating System Lgged In Users :" $Reset_terminal && cat /tmp/who  rm -f /tmp/who#Check OS Memory Userages  echo -e '\E[36m' "Operating System Memory Userages :" $Reset_terminal $(cat /proc/meminfo | awk '/^MemTotal/{MemTotal=$2}/^MemFree/{MemFree=$2}END {print (MemTotal-MemFree)/1024,"M"}')#Check App Memory Userages  echo -e '\E[36m' "App Memory Userages :" $Reset_terminal $(cat /proc/meminfo | awk '/^MemTotal/{MemTotal=$2}/^MemFree/{MemFree=$2}/^Buffers/{Buffers=$2}/^Cached/{Cached=$2}END {print (MemTotal-MemFree-Buffers-Cached)/1024,"M"}')#Check OS Loadaverage  echo -e '\E[36m' "Operating System Loadaverage :" $Reset_terminal $(top -n1b | grep "load average" | awk '{print $(NF-2) $(NF-1) $NF}')#Check OS Diskaverage  echo -e '\E[36m' "Operating System Diskaverage :" $Reset_terminal $(df -hP | grep -vE "%%|tmpfs" | awk '{print $1,$5}')#Check OS Runtime  echo -e '\E[36m' "Operating System Runtime :" $Reset_terminal $(top -n1b | grep "load average" | awk -F"[ ,]+" '{print $5}')fi