Shell脚本注册到Linux系统服务实例

注册一个系统服务,开机自启动.

1 脚本编写

#vim test.sh

代码如下:

#!/bin/bash 
 
#description: hello.sh 
#chkconfig: 2345 20 81 
 
EXEC_PATH=/usr/local/ 
EXEC=hello.sh 
DAEMON=/usr/local/hello.sh 
PID_FILE=/var/run/hello.sh.pid 
 
. /etc/rc.d/init.d/functions 
 
if [ ! -x $EXEC_PATH/$EXEC ] ; then 
       echo "ERROR: $DAEMON not found" 
       exit 1 
fi 
 
stop() 

       echo "Stoping $EXEC ..." 
       ps aux | grep "$DAEMON" | kill -9 `awk '{print $2}'` >/dev/null 2>&1 
       rm -f $PID_FILE 
       usleep 100 
       echo "Shutting down $EXEC: [  OK  ]"     

 
start() 

       echo "Starting $EXEC ..." 
       $DAEMON > /dev/null & 
       pidof $EXEC > $PID_FILE 
       usleep 100 
       echo "Starting $EXEC: [  OK  ]"         

 
restart() 

    stop 
    start 

 
case "$1" in 
    start) 
        start 
        ;; 
    stop) 
        stop 
        ;; 
    restart) 
        restart 
        ;; 
    status) 
        status -p $PID_FILE $DAEMON 
        ;; 
    *) 
        echo "Usage: service $EXEC {start|stop|restart|status}" 
        exit 1 
esac 
 
exit $?

2注册服务

代码如下:

# chmod 700 test.sh
# cp test.sh /etc/init.d/
# chkconfig --add test.sh
# chkconfig --list

3.删除服务

代码如下:

# chkconfig  --del test.sh

(0)

相关推荐

  • Shell脚本注册到Linux系统服务实例

    注册一个系统服务,开机自启动. 1 脚本编写 #vim test.sh 复制代码 代码如下: #!/bin/bash    #description: hello.sh  #chkconfig: 2345 20 81    EXEC_PATH=/usr/local/  EXEC=hello.sh  DAEMON=/usr/local/hello.sh  PID_FILE=/var/run/hello.sh.pid    . /etc/rc.d/init.d/functions    if [ !

  • shell脚本一键安装php7的实例(推荐)

    如下所示: #!/bin/bash php_gz_file='/home/php/Downloads/source/php-7.0.0.tar.bz2' tar_dir='/home/php/Downloads/dst/' source_dir='php-7.0.0' cd $tar_dir rm -rf $source_dir echo '===start tar php ========' tar -jxvf $php_gz_file > /dev/null echo '===end tar

  • Shell脚本遍历一个日期范围实例

    如果跟shell脚本打交道,遍历一个时间范围是很常见的事情,那么今天就跟大家分享一下: 复制代码 代码如下: #!/usr/bin/env bash date1="$1" date2="$2" echo "date1: $date1" echo "date2: $date2" tempdate=`date -d "-0 day $date1" +%F` enddate=`date -d "-0 d

  • Shell脚本实现在Linux系统中自动安装JDK

    A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在A上运行本脚本: 复制代码 代码如下: $ ./install-jdk.sh B的IP or: 复制代码 代码如下: $ ./install-jdk.sh "B的IP" "JDK的URI" 就可以在机器B上安装JDK.jdk使用的tar包需要用户自己设定DEFAULT_JDK_SRC=?,保证可以wget得到即

  • shell脚本--sed的用法详解

    sed在处理文本时是逐行读取文件内容,读到匹配的行就根据指令做操作,不匹配就跳过. sed是Linux下一款功能强大的非交互流式文本编辑器,可以对文本文件进行增.删.改.查等操作,支持按行.按字段.按正则匹配文本内容,灵活方便,特别适合于大文件的编辑.本文主要介绍sed的一些基本用法,并通过shell脚本演示sed的使用实例. 1.sed的使用方法,调用sed 命令的语法有两种: 一.在命令行指定sed指令对文本进行处理:sed +选项  '指令' 文件 二.先将sed指令保存到文件中,将该文件

  • Linux 在Shell脚本中使用函数实例详解

    Linux 在Shell脚本中使用函数实例详解 Shell的函数 Shell程序也支持函数.函数能完成一特定的功能,可以重复调用这个函数. 函数格式如下: 函数名() { 函数体 } 函数调用方式: 函数名 参数列表 实例:编写一函数add求两个数的和,这两个数用位置参数传入,最后输出结果. root@ubuntu:/home/study# vi test3 #!/bin/bash add(){ a=$1; b=$2; z=`expr $a + $b`; echo "The sum is $z&

  • Linux 单个tomcat多实例部署shell脚本详解

    Linux 单个tomcat多实例部署shell脚本详解 步骤: 1. 下载tomcat,解压安装 2.将tomcat下的webapps,conf,temp等目录分别拷至根目录www下A,B,C目录下 3.新建如下脚本restart_tomcat.sh 4.使用restart_tomcat.sh A/B/C #!/bin/sh if [ -z $1 ] then echo "\033[31;1mplease input the app which you need restart...\033[

  • Linux Shell脚本编程初体验

    通常,当人们提到"shell脚本语言"时,浮现在他们脑海中是bash,ksh,sh或者其它相类似的linux/unix脚本语言.脚本语言是与计算机交流的另外一种途径.使用图形化窗口界面(不管是windows还是linux都无所谓)用户可以移动鼠标并点击各种对象,比如按钮.列表.选框等等.但这种方式在每次用户想要计算机/服务器完成相同任务时(比如说批量转换照片,或者下载新的电影.mp3等)却是十分不方便.要想让所有这些事情变得简单并且自动化,我们可以使用shell脚本. 某些编程语言,像

  • Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例

    每种语言都有自己的优势,互相结合起来各取所长程序执行起来效率更高或者说哪种实现方式较简单就用哪个,nodejs是利用子进程来调用系统命令或者文件,文档见http://nodejs.org/api/child_process.html,NodeJS子进程提供了与系统交互的重要接口,其主要API有: 标准输入.标准输出及标准错误输出的接口. NodeJS 子进程提供了与系统交互的重要接口,其主要 API 有: 标准输入.标准输出及标准错误输出的接口 child.stdin 获取标准输入 child.

  • Linux下一些常用的Shell脚本整理

    如何计算当前目录下的文件数和目录数 # ls -l * |grep "^-"|wc -l ---- to count files # ls -l * |grep "^d"|wc -l ----- to count dir 如何只列子目录? ls -F | grep /$ 或者 alias sub = "ls -F | grep /$"(linux) ls -l | grep "^d" 或者 ls -lL | grep &quo

随机推荐