【正文】
NULL, `serv_info` varchar(50) NOT NULL, `cpu_info` varchar(50) NOT NULL, `disk_info` varchar(50) NOT NULL, `mem_info` varchar(50) NOT NULL, `load_info` varchar(50) NOT NULL, `mark_info` varchar(50) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `ip_info` (`ip_info`), UNIQUE KEY `ip_info_2` (`ip_info`) )。然后編寫腳本如下:!/bin/shauto get system infoauthor wugk 20140829echo e \033[34m \033[1mcat EOF++++++++++++++++++++++++++++++++++++++++++++++++++++++Wele to use system Collect+++++++++++++++++++++++++++++++++++++++++++++++++++++++EOFip_info=`ifconfig |grep Bcast|tail 1 |awk 39。{print $2}39。|cut d: f 2`cpu_info1=`cat /proc/cpuinfo |grep 39。model name39。|tail 1 |awk F: 39。{print $2}39。|sed 39。s/^ //g39。|awk 39。{print $1,$3,$4,$NF}39。`cpu_info2=`cat /proc/cpuinfo |grep physical id|sort |uniq c|wc l`serv_info=`hostname |tail 1`disk_info=`fdisk l|grep Disk|grep v identifier|awk 39。{print $2,$3,$4}39。|sed 39。s/,//g39。`mem_info=`free m |grep Mem|awk 39。{print Total,$1,$2M}39。`load_info=`uptime |awk 39。{print Current Load: $(NF2)}39。|sed 39。s/\,//g39。`mark_info=39。BeiJing_IDC39。echo e \033[32m\033[1mecho IPADDR:${ip_info}echo HOSTNAME:$serv_infoecho CPU_INFO:${cpu_info1} X${cpu_info2}echo DISK_INFO:$disk_infoecho MEM_INFO:$mem_infoecho LOAD_INFO:$load_infoecho e \033[32m\033[0mecho e n \033[36mYou want to write the data to the databases? \033[1m 。read ensureif [ $ensure == yes o $ensure == y o $ensure == Y ]。then echo echo e 39。\033[31mmysql uaudit p123456 D audit e 39。39。39。 insert into audit_audit_system values(39。39。,39。${ip_info}39。,39。$serv_info39。,39。${cpu_info1} X${cpu_info2}39。,39。$disk_info39。,39。$mem_info39。,39。$load_info39。,39。$mark_info39。) 39。39。39。 \033[0m 39。else echo wait exit...... exitfi讀取數(shù)據(jù)庫信息:mysql uroot p123 e 39。use wugk1 。select * from audit_audit_system。39。|sed 39。s///g39。|grep v id這樣,我們可以把數(shù)據(jù)庫的內(nèi)容在shell腳本里面調(diào)用出來。16. Shell編程之磁盤報警高級腳本腳本分析: 磁盤達到85%發(fā)送報警郵件。 發(fā)送郵件命令格式。 多個報警設置。 把分區(qū)的信息寫入文件。Mail s “郵件主題” c”抄送地址” b “密送地址” f 發(fā)送人郵件地址 –F 發(fā)件人姓名 要發(fā)送的郵件內(nèi)容!/bin/shauto monitor diskby authors wugk 2014echo e \033[31m \033[1mrm rf LIST=`df h |grep ^/dev/ `cat EOF++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++wele to use auto monitor system+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++EOFecho e \033[32m\033[0mechosleep 2while read linedo IP_ADDR=`ifconfig eth1|grep Bcast|awk 39。{print $2}39。|cut d: f 2` D_Name=`echo $line|awk 39。{print $1,$NF分區(qū)}39。` D_Total=`echo $line|awk 39。{print $2}39。` D_Avail=`echo $line|awk 39。{print $4}39。` D_Percent=`echo $line|awk 39。{print $5}39。|sed 39。s/%//g39。` if [ $D_Percent ge 50 ]。thencat EOF************** Email *******************通知類型: 故障服務 : Disk Monitor 主機: $IP_ADDR狀態(tài): 警告 日期/時間: 周二 2014年11月11日 15時:15分:53秒 CST額外信息:CRITICAL DISK Monitor:$D_Name Used more than ${D_Percent}% EOFEOF echo e \033[32mThe $D_Name has been used for more than ${D_Percent}% ,Please Check.\033[0m mail s $D_Name Warning wgkgood@ echo The $D_Name has been used for more than ${D_Percent}% ,Please Check.|mail s $D_Name Warning wgkgood@ fidone echo e \n\033[32m\033[1mecho Done.17. Shell編程之服務監(jiān)控檢查腳本18. Shell編程之實戰(zhàn)WEB界面展示一19. Shell編程之實戰(zhàn)WEB界面展示二20. Shell編程之學習心得分享及拓展