Linux中用PHP判断程序运行状态的2个方法
2015-01-24信息快讯网
这篇文章主要介绍了Linux中用PHP判断程序运行状态的2个方法,需要的朋友可以参考下
有时候在服务器上面写一些脚本的时候,经常要放到crontab里面定时运行。时间长了就有一个问题,那就是程序重复运行消耗太多的资源,怎么处理呢?下面我写了两种方法:
第一种:用linux里面的正则匹配
function ifrun($clsname,$bf = 0)
{
//下面进行检测,如有一个进程正在运行,则不运行
$str=shell_exec("/bin/ps ax > /home/root/".$clsname."_run.txt");
$str=shell_exec("/bin/grep -c '".$clsname.".php' /home/root/".$clsname."_run.txt");
if($bf >0)
{
if($str >=$bf)
{
return 1;
}
else
{
return 0;
}
}
else
{
if ($str>=2)
{
return 1;
}
else
{
return 0;
}
}
}
调用:
if (ifrun('pooy',5)) { die("pooy is running"); }
备注:pooy是程序pooy.php的名称!
第二种:把进程写到文件里面,然后用file函数去读取然后去匹配字符串
system('ps -ef |grep wget > /root/pooy.txt');
$arr=file('/root/pooy.txt');
$total=count($arr);
for($i=0;$i<$total;$i++){
$count=array();
if(stristr($arr[$i],'www/pooy') !== FALSE) {
//echo '"earth" not found in string';
$count[]='no';
break;
}
}
if(count($count) >= 1 )
{
echo "A same programs are running";
exit();
}else
{
echo "start__________________________________________________";
}
注:”www/pooy” 是程序里面包含的字符串!
现在php程序在linux运行是否通畅多了呢?
PHP实现设计模式中的抽象工厂模式详解
php中字符集转换iconv函数使用总结
PHP生成网站桌面快捷方式代码分享
PHP中执行cmd命令的方法
PHP @ at 记号的作用示例介绍
在Win7 中为php扩展配置Xcache
在win7中搭建Linux+PHP 开发环境
PHP中echo,print_r与var_dump区别分析
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
PHP中的output_buffering详细介绍
php实现的Timer页面运行时间监测类
PHP之autoload运行机制实例分析
一个图片地址分解程序(用于PHP小偷程序)
PHP中几个可以提高运行效率的代码写法、技巧分享
从零开始学YII2框架(六)高级应用程序模板
PHP面向对象程序设计之类常量用法实例
PHP面向对象程序设计之接口用法
PHP+FastCGI+Nginx配置PHP运行环境
基于PHP的简单采集数据入库程序【续篇】
在PHP中运行Linux命令并启动SSH服务的例子
PHP按行读取文件时删除换行符的3种方法
PHP CURL获取返回值的方法
PHP判断远程图片是否存在的几种方法
一个PHP的ZIP压缩类分享
PHP生成自定义长度随机字符串的函数分享
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
php获取网卡的MAC地址支持WIN/LINUX系统
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
PHP include任意文件或URL介绍
php计算当前程序执行时间示例
PHP中批量生成静态html(命令行下运行PHP)
强制PHP命令行脚本单进程运行的方法
用PHP和Shell写Hadoop的MapReduce程序
适用于抽奖程序、随机广告的PHP概率算法实例
PHP程序漏洞产生的原因分析与防范方法说明
php判断ip黑名单程序代码实例
PHP运行SVN命令显示某用户的文件更新记录的代码