注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

isblog主页

或许不一定要做得最多,但一定要做得最好! 能力就是一种财富,积累越多,就越体现你

 
 
 

日志

 
 

一个shell通用调用不同php脚本  

2013-07-09 17:28:17|  分类: linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
这个shell脚本主要是用于调用不同的php脚本。主要是用于方便管理脚本。
如在linux定时任务下:
*/2 * * * * /data/shells/execphp.sh test1  myparam1 myparam2 > /dev/null 2>&1          #调用test1.php脚本
*/2 * * * * /data/shells/execphp.sh test2  myparam1 > /dev/null 2>&1                          #调用test2.php脚本
*/2 * * * * /data/shells/execphp.sh test3  myparam1 > /dev/null 2>&1                          #调用test3.php脚本

shell脚本代码如下:

#!/bin/sh

#----------------------------------------------------------------------------------
# 功能:用于调用不同php脚本
# 参数1:php脚本文件名称,不能带.php后缀
# 其余参数作为php脚本参数
# 如调用test.php脚本,有一个参数(值为myparam)
# 命令:execphp.sh test myparam 或者绝对路径 execphp.sh /data/www/shells/test myparam
#----------------------------------------------------------------------------------
echo "----------------------------------------------------"
echo " "
#参数1为进程名称
pname="$1.php"
echo "The PHP file name: $pname"

#要执行脚本的全称,包括脚本所需参数
runname=$pname
count=1
for i in $*
do
if [ $count -ge 2 ]; then
runname="$runname $i";
fi
count=`expr $count + 1`
done
echo "Execute the PHP script: $runname"

#当前脚本所在目录
dir=`dirname "$0"`

#获取脚本真实文件名,以便获取进程ID
execname=`echo ${pname##*/}`
echo "Process name: $execname"

#获取脚本进程ID
pid=`ps -ef|grep -v grep|grep "$execname"| sed -n '1P' | awk '{print $2}'`
echo "process ID: $pid"

#判断进程是否存在,不存在则拉起
if [ "$pid" == "" ]; then
echo "$pname run ..."
#判断字符串是否包涵有指定字符/
if echo "$pname" | grep -q "/"
then
#执行绝对路径的php脚本
/usr/bin/php $runname
else
#当前脚本所以目录执行php脚本
cd "$dir"
/usr/bin/php $runname
fi
else
echo "$pname pid [$pid] is running"
fi
echo " "
echo "----------------------------------------------------"
exit 0


  评论这张
 
阅读(350)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017