任务需求:以最简单的方式管理 /usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini 这条命令 包括启动停止重启

使用技术:shell脚本 chkconfig服务管理

实现流程:

1.在 /etc/init.d 目录下创建shell脚本

vim /etc/init.d/php-fpm

2.写入脚本(写在博客上就手动添加了很多注释 非常全面  所有中文注释行删除掉才是脚本内容)

#!/bin/bash
#指定运行shell # chkconfig: - 85 15
#指定运行级别 -代表默认2345 85和15代表启动优先权和关闭优先权 值越小越优先 # processname:php-fpm
#指定服务名称 #定义变量
phpfpm=/usr/local/php7/sbin/php-fpm
phpini=/usr/local/php7/etc/php.ini
fpmpid=$(ps -ef | grep php-fpm | grep -v 'color' | grep -v 'pts' | awk '{print $2}')
#抓取php-fpm进程 排除带有color的行和带有pts的行 再进行抓取第二列 获取出来的是多列pid号 start(){
if [ -z "$fpmpid" ]; then
#如果fpmpid是空 如果判断非空用 -n $phpfpm -c $phpini
#那么就运行这条命令: /usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini fi
echo 'php-fpm starting...'
} stop(){
if [ -z "$fpmpid" ]; then
#如果fpmpid是空 则退出脚本
exit 1
fi
kill -9 $fpmpid
echo 'php-fpm stop....'
} restart(){
stop
start
echo 'php-fpm restart....'
} status(){
ps -ef | grep -v 'color' | grep -v 'pts' | grep 'php-fpm'
#查看状态打印出php-fpm的运行进程
} #判断参数值 根据不同的参数值走不同分支 执行相应的函数
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
esac

3.给执行权限

chmod +x /etc/init.d/php-fpm

4.加入服务

chkconfig --add php-fpm

5.最终操作

service php-fpm start
service php-fpm status
service php-fpm restart
service php-fpm stop

shell之最常用的服务脚本的更多相关文章

  1. shell编程之服务脚本编写,文件锁以及信号捕获

    shell脚本编程是linux运维工程师必备的技能,也是非常重要的一个技能,所以把shell编程学好,只有好处.基础语法我也就不讲了,学过C语言这些语言的,稍微看一下就能明白shell编程的基础,所以 ...

  2. Shell 实践、常用脚本进阶

    1.备份单个文件 #!/bin/bash #备份单个文件 DATE=`/bin/date +%y%m%d` /bin/tar -czpf /backup/$1.$DATE.tar.gz /backup ...

  3. shell脚本--制作自己的服务脚本

    首先注意一下,我用的环境是centos6.5,中间有一些操作和在Ubuntu上有一些地方的操作是不同的, 编写脚本 首先看一个实例:假设有一个test的服务,可以通过命令对test进行启动.关闭或者重 ...

  4. (转载)shell日志分析常用命令

    shell日志分析常用命令总结 时间:2016-03-09 15:55:29来源:网络 导读:shell日志分析的常用命令,用于日志分析的shell脚本,统计日志中百度蜘蛛的抓取量.抓取最多的页面.抓 ...

  5. shell分析日志常用指令合集

    数据分析对于网站运营人员是个非常重要的技能,日志分析是其中的一个.日志分析可以用专门的工具进行分析,也可以用原生的shell脚本执行,下面就随ytkah看看shell分析日志常用指令有哪些吧.(log ...

  6. [ SHELL编程 ] 编程常用的ORACLE相关命令

    本文主要描述shell编程中常用的Oracle相关命令. 1.sqlplus -L/-S参数 sqlplus -L user/password #-L参数表示用户只尝试登录一次, 而不是在出错时再次提 ...

  7. 转:python常用运维脚本实例

    python常用运维脚本实例 转载  file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函 ...

  8. python常用运维脚本实例【转】

    file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件 . 首先 ...

  9. (转) CentOS 7添加开机启动服务/脚本

    CentOS 7添加开机启动服务/脚本 原文:http://blog.csdn.net/wang123459/article/details/79063703 一.添加开机自启服务 在CentOS 7 ...

随机推荐

  1. Ext使用中问题总结

    隐藏 Ext.form.DateField 的触发(trigger)元素使其内容不能修改并使其所有的文本框(text field)显示格式为Y-m-d items : [{ xtype : ' dat ...

  2. js初学练手:Csdn Ads Cleaner

    最新版本在这里哒:https://greasyfork.org/zh-CN/scripts/376621-csdn-ads-cleaner 隔壁csdn的广告太猖獗啦!写个js管管它 需配合Tempe ...

  3. Python数据可视化编程实战pdf

    Python数据可视化编程实战(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1vAvKwCry4P4QeofW-RqZ_A 提取码:9pcd 复制这段内容后打开百度 ...

  4. Linux 下的两个特殊的文件 -- /dev/null 和 /dev/zero 简介及对比

    1.概论 -- 来自维基的解释 /dev/null  : 在类Unix系统中,/dev/null,或称空设备,是一个特殊的设备文件,它丢弃一切写入其中的数据(但报告写入操作成功),读取它则会立即得到一 ...

  5. ggplot2 aes函数map到data笔记

    .all_aesthetics <- c("adj", "alpha", "angle", "bg", " ...

  6. 解决Android Studio 将String类型保存为.txt文件,按下button跳转到文件管理器(解决了保存txt文件到文件管理后,手机打开是乱码的问题)

    不知道为什么保存文件后之前打开一直都OK,就突然打开看到变成乱码了,最后解决了 关键:outStream.write(finalContent.getBytes("gbk")); ...

  7. python从入门到实践-4章操作列表

    magicians = ['alice','david','carolina']for magician in magicians: print(magician) print(magician.ti ...

  8. gc笔记(转)

    GC,即就是Java垃圾回收机制.目前主流的JVM(HotSpot)采用的是分代收集算法.与C++不同的是,Java采用的是类似于树形结构的可达性分析法来判断对象是否还存在引用.即:从gcroot开始 ...

  9. Win10 安装 VMWare中 MAC OS X的安装,VMWare tools的配置与iOS的Helloworld

    iOS的开发必须在MAC OS X系统下进行,这很蛋疼,现在MACBOOK动不动就上千上万大洋,这足够买台配置怪兽了,好吗?然而,我们是可以通过在VMWare中安装MAC OS X进行iOS开发的.对 ...

  10. Java两种方法实现循环报数

    问题描述: 十个猴子围成一圈选大王,依次1-3 循环报数,报到3 的猴子被淘汰,直到最后一只猴子成为大王.问,哪只猴子最后能成为大王? 方法一:Java链表 public class TestAll ...