简单的linux下的php获取服务器状态的代码,不多说-直接上函数:

function get_used_status(){

$fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r");//获取某一时刻系统cpu和内存使用情况

$rs = "";

while(!feof($fp)){

$rs .= fread($fp,1024);

}

pclose($fp);

$sys_info = explode("\n",$rs);

$tast_info = explode(",",$sys_info[3]);//进程 数组

$cpu_info = explode(",",$sys_info[4]); //CPU占有量 数组

$mem_info = explode(",",$sys_info[5]); //内存占有量 数组

//正在运行的进程数

$tast_running = trim(trim($tast_info[1],'running'));

//CPU占有量

$cpu_usage = trim(trim($cpu_info[0],'Cpu(s): '),'%us'); //百分比

//内存占有量

$mem_total = trim(trim($mem_info[0],'Mem: '),'k total');

$mem_used = trim($mem_info[1],'k used');

$mem_usage = round(100*intval($mem_used)/intval($mem_total),2); //百分比

/*硬盘使用率 begin*/

$fp = popen('df -lh | grep -E "^(/)"',"r");

$rs = fread($fp,1024);

pclose($fp);

$rs = preg_replace("/\s{2,}/",' ',$rs); //把多个空格换成 “_”

$hd = explode(" ",$rs);

$hd_avail = trim($hd[3],'G'); //磁盘可用空间大小 单位G

$hd_usage = trim($hd[4],'%'); //挂载点 百分比

//print_r($hd);

/*硬盘使用率 end*/

//检测时间

$fp = popen("date +\"%Y-%m-%d %H:%M\"","r");

$rs = fread($fp,1024);

pclose($fp);

$detection_time = trim($rs);

/*获取IP地址 begin*/

/*

$fp = popen('ifconfig eth0 | grep -E "(inet addr)"','r');

$rs = fread($fp,1024);

pclose($fp);

$rs = preg_replace("/\s{2,}/",' ',trim($rs)); //把多个空格换成 “_”

$rs = explode(" ",$rs);

$ip = trim($rs[1],'addr:');

*/

/*获取IP地址 end*/

/*

$file_name = "/tmp/data.txt"; // 绝对路径: homedata.dat

$file_pointer = fopen($file_name, "a+"); // "w"是一种模式,详见后面

fwrite($file_pointer,$ip); // 先把文件剪切为0字节大小, 然后写入

fclose($file_pointer); // 结束

*/

return array('cpu_usage'=>$cpu_usage,'mem_usage'=>$mem_usage,'hd_avail'=>$hd_avail,'hd_usage'=>$hd_usage,'tast_running'=>$tast_running,'detection_time'=>$detection_time);

}

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

PHP获取CentOS服务状态,简单linux下php获取服务器状态代码相关推荐

  1. arm linux 时间获取,菜鸟自学ARM:linux下编程获取系统时间和设置时间

    获取时间有几种编程方法: 1 #include #include main(){ time_t t; struct tm *p; time(&t); p=gmtime(&t); pri ...

  2. linux 进程 状态 ri,LINUX下解决netstat查看TIME_WAIT状态过多问题(转)

    # netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c 16 CLOSING 130 ESTABLISHED 298 FIN_WAIT1 13 FIN_WA ...

  3. linux下如何获取cpu的利用率

    "proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提供接口.用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些 ...

  4. linux dns服务无效,Linux下搭建DNS服务器及踩坑

    DNS服务 域名系统(DNS)是建立在分布式数据库上的分层命名系统.该系统将域名转换为IP地址,并可以将域名分配给Internet组资源和用户,无论实体的物理位置如何. 说白了就是:域名与IP之间的相 ...

  5. 一份简单的在 Linux下编译及调试 C 代码的指南

    摘要: 一份简单的在 Linux下编译及调试 C 代码的指南 对于Linux下的C程序员来说,几乎天天都会和Linux打交道.但在很多人的眼中,Linux是一个易用性极差.靠命令驱动的操作系统,根本无 ...

  6. 怎么用Linux命令查看BIOS信息,LINUX下怎样获取主板的信息用到什么命令

    在Linux系统中,我们常常需要使用命令来实现各种操作,比如从系统中获取主板信息参数,很多用户都不太清楚,本文教给大家在LINUX下怎样获取主板的信息. 方法步骤 dmidecode取出的信息可能不是 ...

  7. Linux下Wget获取云盘资源

    Linux下Wget获取云盘资源 使用linux过程中,经常使用云盘的我们往往需要下载云盘资源,但是在firefox页面下载往往已失败告终,怎么办呢?这里引入了firefox插件flashgot,通过 ...

  8. linux远程获取文件,Linux下实现获取远程机器文件

    创建公钥秘钥实现无密码登录后即可获取到文件内容了!! A:xxx.xxx.6.xxx B:xxx.xxx.xxx.x 一.创建 A机器 ssh-keygen -t rsa 二.拷贝--将生成的公钥复制 ...

  9. java 获取linux主机名,linux下java获取hostname

    linux下java获取hostname [2021-01-29 19:46:41]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace( ...

最新文章

  1. 腾讯AI Lab负责人张潼离职,张正友或接替其位
  2. MS讲座:可视化的软件架构设计和Portal Starter Kit挖宝记
  3. Chapter 1 First Sight——25
  4. 线性表之--队列操作
  5. Python批量爬取名字中带有中文的pdf文件
  6. JavaScript学习总结(4)——JavaScript数组
  7. 微信昵称上标电话号码,实用的新玩法
  8. 微鲸科大讯飞、出门问问合作 TA的语音功能怎么样?
  9. 支持下一代分布式应用链开发的区块链服务互联网
  10. 听NBA现场讲解很爽,但啥都听不懂?快来学学术语!
  11. C语言程序设计精髓--第3周编程题在线测试
  12. unity 报错 Some objects were not cleaned up when closing the scene. 原因与方案
  13. 总结一下2010--2011初看的书
  14. 免流服务器系统怎么选,免流云服务器选
  15. 【Qt开发】QThread中的互斥、读写锁、信号量、条件变量
  16. 联想win10进bios的正确方式,并不是按键!!!!!
  17. 如何解决C++编译错误C2280尝试引用已删除的函数【每天一个小技巧】
  18. 一款性能足够的4.5寸以下的手机
  19. SpringBoot(三):Lombok
  20. 创建一个SpringBoot工程

热门文章

  1. DNS Flusher
  2. 数据库查询 sysobjects
  3. C#读取Win32标准DLL文件中的字符串资源
  4. 人一生要解决的50个关键问题
  5. 如何解决Asp.Net MVC和WebAPI的Controller名称不能相同的问题
  6. Python中可以使用静态类变量吗?
  7. 在生产集群上运行topology
  8. linux的crash之hardlock排查记录
  9. 像癌症一样传播:世界首个PLC病毒问世
  10. 《深入理解C++11:C++ 11新特性解析与应用》——2.4 宏__cplusplus