自己简单写的一个php服务的启动脚本和大家分享

思路(实现的原理):

1:function模块+case语句多分支判断

2:通过添加# chkconfig: 2345 43 89注释实现开机自启动(前提是把脚本放入/etc/init.d/目录下 然后chmod给可执行权限,然后chkconfig --add phpd(脚本名称))

3:每次命令执行是否成功用$?是否为0来给予反馈

#!/bin/bash
# php-fpm Start/Stop php-fpm
#
# chkconfig:
#author andy
#date
#function php-fpm manager
#email fei1989118@.com
#version 1.0
#check service status
#usage
. /etc/init.d/functions
#define var
check=`netstat -lnutp|grep php-fpm|wc -l`
function usage(){ echo "usage:$0 {start|stop|restart|status}"
exit
}
function start(){ if [ "$1" = "start" -a $check -ne ];then
action "php is already started!" /bin/false
exit
elif [ "$1" = "start" -a $check -eq ];then
sleep
/usr/local/sbin/php-fpm
if [ $? = ];then
action "php start successfully!" /bin/true
else
action "php start failed!" /bin/false
exit
fi
fi
}
function stop(){
if [ "$1" = "stop" -a $check -eq ];then
action "php is not running!" /bin/false
exit
elif [ "$1" = "stop" -a $check -ne ];then
killall php-fpm
sleep
if [ $? = ];then
action "php stoped successfully!" /bin/true
else
action "php stoped failed!" /bin/false
exit
fi
fi
}
function restart(){
if [ "$1" = "restart" -a $check -eq ];then
action "php is not running!" /bin/false
sleep
/usr/local/sbin/php-fpm
if [ $? = ];then
action "php start successfully!" /bin/true
else
action "php start failed!" /bin/false
exit
fi elif [ "$1" = "restart" -a $check -ne ];then
killall php-fpm
if [ $? = ];then
action "php stoped successfully!" /bin/true
else
action "php stoped failed!" /bin/false
fi
sleep
/usr/local/sbin/php-fpm
if [ $? = ];then
action "php start successfully!" /bin/true
else
action "php start failed!" /bin/false
exit
fi
fi }
function status(){
if [ "$1" = "status" -a $check -eq ];then
echo "php is not running!"
exit
elif [ "$1" = "status" -a $check -ne ];then
echo "php is running"
exit
fi
} case "$1" in
start) start $
;;
stop) stop $
;;
restart) restart $
;;
status) status $
;;
*) usage $
esac

如果有不对的地方请多多指正

分享一个php的启动关闭脚本(原)的更多相关文章

  1. 分享一个mysql服务启动与关闭的bat文件

    有时候打开数据库可视化工具(sqlyog.navicat)连接数据库时,会出现以下报错信息. 大家都知道是数据库的服务没有启动. 所以我想给大家分享一个bat文件可供快速启动mysql的数据库的服务, ...

  2. Ops:jar包启动关闭脚本

    简介 公司开发架构为java语言的rpc dubbo架构,将功能分解为各个模块,模块较多,发布到环境上的应用为编译后的jar包和配置文件,以及启动关闭jar包的shell脚本.之前经常会出现进程启动不 ...

  3. VMware相关服务启动关闭脚本

    VMware相关服务 VMware Authonrization Service:用于启动和访问虚拟机的授权和身份验证服务 VMware DHCP Service: IP自动分配协议——它不启动 虚拟 ...

  4. springboot启动关闭脚本

    springboot项目jar包启动,application.properties.jar包.shell脚本.static目录(静态页面和jar包分离)在同一目录下 [start.sh] #!/bin ...

  5. 【4】Kafka集群启动/关闭脚本

    说明:本脚本基于SSH服务器免密登录,如集群未配置SSH,参照:<SSH安装配置> . 一.启动脚本:start-kafka-cluster.sh #!/bin/bash brokers= ...

  6. Mongodb 启动关闭脚本并设置开机自动启动Mongodb

    配置文件内容:[root@yoon etc]# cat mongod.conf logpath=/export/log/mongodb.loglogappend=truefork = truedbpa ...

  7. redis服务启动关闭脚本

    代码如下: # chkconfig: 90 10 # description: service of redis for start and stop add by tomener PATH=/usr ...

  8. redis centos 6.x 启动关闭脚本

    #!/bin/sh #Configurations injected by install_server below.... EXEC=/usr/local/bin/redis-server CLIE ...

  9. mysql启动关闭脚本

    #!/bin/sh mysql_port= mysql_username="root" mysql_password="" function_start_mys ...

随机推荐

  1. Unity3d学习 预设体(prefab)的一些理解

    之前一直在想如果要在Unity3d上创建很多个具有相同结构的对象,是如何做的,后来查了相关资料发现预设体可以解决这个问题! 预设体的概念: 组件的集合体 , 预制物体可以实例化成游戏对象. 创建预设体 ...

  2. JavaScript String对象

    本编主要介绍String 字符串对象. 目录 1. 介绍:阐述 String 对象的说明以及定义方式. 2. 实例属性:介绍 String 对象的实例属性: length. 3. 实例方法:介绍 St ...

  3. HTML5 progress和meter控件

    在HTML5中,新增了progress和meter控件.progress控件为进度条控件,可表示任务的进度,如Windows系统中软件的安装.文件的复制等场景的进度.meter控件为计量条控件,表示某 ...

  4. mysql 学习总结

    MYSQL的增.删.查.改   注册.授权 #创建一个对数据库中的表有一些操作权限的用户,其中OPERATION可以用all privileges替换,DBNAME.TABLENAME可以用*替换,表 ...

  5. Hawk 6. 编译和扩展开发

    Hawk是开源项目,因此任何人都可以为其贡献代码.作者也非常欢迎使用者能够扩展出更有用的插件. 编译 编译需要Visual Stuido,版本建议使用2015, 2010及以上没有经过测试,但应该可以 ...

  6. [原] Cgroup CPU, Blkio 测试

    关于Cgroup的简单测试 [toc] 简单介绍Cgroup (如果对cgroup熟悉可以忽略) 一般情况下,cgroup挂载到一个虚拟文件目录,然后可以通过文件系统的API对其操作. ># m ...

  7. iOS开发 判断当前APP版本和升级

    从iOS8系统开始,用户可以在设置里面设置在WiFi环境下,自动更新安装的App.此功能大大方便了用户,但是一些用户没有开启此项功能,因此还是需要在程序里面提示用户的 方法一:在服务器接口约定对应的数 ...

  8. TFS 安装错误

    错误   问题详细: HTTP 错误 500.19 - Internal Server Error   无法访问请求的页面,因为该页的相关配置数据无效.     详细错误信息     模块 Dynam ...

  9. Apache2.4:AH01630 client denied by server configuration

    问题说明:Apache服务总共有4个,是为了防止单点故障和负载均衡,负载均衡控制由局方的F5提供. 访问的内容在NAS存储上,现象是直接访问每个apache的服务内容都是没有问题,但是从负载地址过来的 ...

  10. Tomcat之APR错误

    在发布Apache Tomcat的时候,突然出现如下错误: An incompatible version 1.1.31 of the APR based Apache Tomcat Native l ...