#! /bin/bash
#jiance.sh
#硬盘使用率
ds=`df|awk '{if(NR==4){print int($5)}}'`
#内存使用率
used=`free -m|awk '{if(NR==2){print int($3)}}'`
tot=`free -m|awk '{if(NR==2){print int($2)}}'`
per=$(($used*100/$tot))
#apache2是否正常运行
apa=`netstat -tanpl | grep 80 | awk '{print $4}' | sed -n '1p'`
#mysql是否正常运行
mysql=`netstat -tanpl | grep 3306 | awk '{print $4}' | sed -n '1p'`
#统计
res1="硬盘使用率:"$ds"%\n内存使用率:"$per"%\n"
#echo -e $res1
if [ $apa != "0.0.0.0:80" ];then
str1="apache2已经停止运行"
else
str1="apache2正常运行"
fi
if [ $mysql != "127.0.0.1:3306" ];then
str2="myqsl已经停止运行"
else
str2="mysql正常运行"
fi
#统计输出
text=$res1$str1"\n"$str2;
#监控发邮件
if [ $ds -gt 45 ];then
echo -e $text|mail -s "hotsun.link的运行状态" 1324928751@qq.com
fi
if [ $per -gt 55 ];then
echo -e $text|mail -s "hotsun.link的运行状态" 1324928751@qq.com
fi
日存档: 2018年12月13日
监测服务器的shell脚本
作者: Eagle
日期: 2018年12月13日
1 条评论
递归查询和其相关
作者: Eagle
日期: 2018年12月13日
2 条评论
先准备库数据结构:

相关函数:
function get_cates($pid=0,$cates=array(),$level=0){
$result = get_by_name("category","pid=$pid");
if(!empty($result)){
foreach($result as $value){
$str = "";
for($i=0;$i<$level;$i++){
$str .="<span color='red'>-</span>";
}
$value['name'] = $str.$value['name'];
$cates[] = $value;
$cates = get_cates($pid=$value['id'],$cates,$level+1);
}
}
return $cates;
}
//根据当前id查出其所有子类id
function get_ids($dir,$id,$results = array()){
$result = get_by_name($dir,"pid=$id");
if(!empty($result)){
for($i=0;$i<count($result);$i++){
$id = $result[$i]["id"];
$results[] = $result[$i];
$results = get_ids($dir,$id,$results);
}
}
return $results;
}
//将数据追加成多维格式
function get_arr($pid=0,$cates=array()){
$result = get_by_name("category","pid=$pid");
if(!empty($result)){
foreach($result as $key=>$value){
$cates[$key] = $value;
if(empty($cates[$key]['child'])){
$cates[$key]['child'] = array();
}
$cates[$key]['child'] = get_arr($value['id'],$cates[$key]['child']);
}
}
return $cates;
}
//递归遍历
function arr_foreach($dt,$level=0){
echo "<ul>";
foreach($dt as $key=>$value){
$str = "";
for($i=0;$i<$level;$i++){
$str .="        ";
}
foreach($value as $key=>$val){
if($key == "name"){
echo "<li><a href='#'><font color='#EB05B0' size='18px'>".$str.$val."</font></a></li>";
}else if($key=="child" && count($val) > 0){
arr_foreach($val,$level+1);
}
}
}
echo "</ul>";
}
近期评论