start () {

       echo "Apache start ......        [OK]"
#return 0 可以写一个返回值,比如执行成功返回 0
} stop () { echo "Apache stop ...... [Fail]"
} start #调用函数 直接写函数名即可
stop

实战 nginx 启动管理脚本

 #!/usr/bin/env bash

 nginx_dir=/usr/local/nginx
nginxd=$nginx_dir/sbin/nginx
pid_file=$nginx_dir/logs/nginx.pid
proc=nginx if [ -e $pid_file ];then nginx_process_id=`cat $pid_file`
nginx_process_num=`ps aux | grep $nginx_process_id | grep -v "grep" | wc -l`
fi
start(){ if [ ! -e /etc/init.d/network ];then echo' /etc/init.d/network doesn`t exist'
exit
fi
. /etc/init.d/functions if [ -e $pid_file ] && [ $nginx_process_num -ge ];then
echo "nginx running..."
else
if [ -e $pid_file ] && [ $nginx_process_num -lt ];then
rm -f $pid_file
echo " nginx start ` daemon $nginxad` "
#action "nginx start " $nginxd 另外一种写法 对应27行
fi
echo " nginx start ` daemon $nginxd` " fi }
stop(){ if [ -e $pid_file ] && [ $nginx_process_num -ge ];then echo " nginx stop `killall -s QUIT $proc`"
else
echo 'nginx stop error'
fi
} restart(){
stop
sleep
start
} reload(){ if [ -e $pid_file ] && [ $nginx_process_num -ge ];then
echo "nginx reload `killall -s HUP $proc`"
else
echo 'nginx reload failed' fi
}
status(){
if [ -e $pid_file ] && [ $nginx_process_num -ge ];then echo 'nginx running'
else
echo 'nginx stop'
fi } case $ in
start) start;;
stop) stop;;
restart) restart;;
reload) reload;;
status) status;;
*) echo "USAGE: $0 start|stop|restart|reload|status" ;;
esac

然后将脚本复制到 /etc/init.d/中并命名为nginxd

再修改权限chmod 755 /etc/init.d/nginxd

然后就可以通过service来个控制了

service nginxd status
nginx running

记录 shell学习过程(8)函数的更多相关文章

  1. 记录 shell学习过程(10 ) shell 对文件的操作

    0.sed 常用内部命令 a 在匹配后面添加 i 在匹配前面添加 p 打印 d 删除 s 查找替换 c 更改 y 转换 N D P 下面用a来演示 1.sed 'a 追加内容' 文件 # sed 'a ...

  2. 记录 shell学习过程(9)正则表达式 转自树明聊运维

    正则表达式 正则表达式介绍 特殊字符 POSIX特殊字符 一.正则表达式介绍 正则表达式是一种文本模式匹配,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符") ...

  3. 记录 shell学习过程(7) case 以及 shell 的特殊变量

    case 语法 read -p "num:" n case $n in ) echo haha ;; ) echo hehe ;; ) echo heiehi ;; *) echo ...

  4. 记录 shell学习过程(4)for 循环

    1. for in ` #seq 生成从1到10 如果生成从10到1则写作 seq 10 -1 1 do echo $i done for in 也可以循环出字符串 for i in where is ...

  5. 记录 shell学习过程(11 ) shell 对输出流的处理

    语法 awk  [options] [BEGIN] {program} [END] [file] 常用命令选项 -F fs 指定描绘一行中数据字段的文件分隔符 默认为空格 -f file 指定读取程序 ...

  6. 记录 shell学习过程(6)while 以及 while的嵌套 以及 until

    while中的5种条件 1.数学比较 read -p "Num :" num1 ] do echo 'greater' sleep done 2.字符串比较 read -p &qu ...

  7. 记录 shell学习过程(5)continue break

    1.continue ;i<;i++)) do ];then continue fi echo $i done # ./continue.sh12346789 2.break ;i<;i+ ...

  8. 记录 shell学习过程(3) if 的格式

    ] #-e 为检测目录或文件是否存在 !为取反 then mkdir -v /tmp/ echo 'ok' fi if else if [ $USER == 'root' ] then echo 'h ...

  9. 记录 shell学习过程(2) read的用法

    echo -n "login:"read username  #read后面直接使用一个变量用于接收输入的数据 echo -n "password:"read ...

随机推荐

  1. javascript中DOM获取和设置元素的内容、样式及效果

    getElementById() 根据id获取dom元素 没有找到则返会Null <!DOCTYPE html> <html lang="en"> < ...

  2. java.lang.ClassCastException:java.util.LinkedHashMap不能转换为com.testing.models.xxx

    后台接收前台的json字符串 转pojo 问题(Object 对应定义的pojo) ObjectMapper mapper=new ObjectMapper(); Object object = ma ...

  3. 首次使用Lambda表达式-sunziren

    需要将List<Apple> list = new ArrayList<Apple>(); 按照Apple对象中的price属性从大到小排序. 第一个念头闪过的是冒泡排序,转念 ...

  4. windows使用proxifier全局代理 - 配置可用; windows10 配置全局代理 走 socks5

    最近windows上需要配置全局代理 走 socks5,发现同类型的有 cow pcap 等解决方案,通过尝试发现还是proxifier 比较好用! 下载:https://www.proxifier. ...

  5. sql 根据查询的记录生成序号的几种方式

    row_number()  order() 函数会为查询出来的每一行记录生成一个序号,依次排序且不会重复,注意使用row_number函数时必须要用over子句选择对某一列进行排序才能生成序号. ra ...

  6. JN_0011:改变PPT的页面尺寸,并导出图片

    1,改变尺寸 设计 --  幻灯片大小 --  自定义大小 2,导出图片 另存为 JPG 图片

  7. jdk8配置

    Java SE Development Kit 8u241 下载 https://www.oracle.com/java/technologies/javase/javase-jdk8-downloa ...

  8. 1-1.初始K8s

    术语及原理 Master(主节点:control plane) 集群中的神经中枢网关.负责整个集群的资源管理.Pod调度.弹性伸缩.安全控制.系统监控.纠错等管理功能. ApiServer 集群的网关 ...

  9. MVC开发之注入容器Ninject的使用

    背景 在不使用注入容器之前,我们的项目往往存在着大量耦合的类,这使得我们在开发大型项目时难以维护.比如下面这个简单的MVC框架的例子,计算购物车的产品价格总和: /// <summary> ...

  10. 咸鱼的ACM之路:DFS水题集

    DFS的核心就是从一种状态出发,转向任意的一个可行状态,直到达到结束条件为止.(个人理解) 下面全是洛谷题,毕竟能找到测试点数据的OJ我就找到这一个....在其他OJ上直接各种玄学问题... P159 ...