返回首页
当前位置: 主页 > 操作系统 > Linux教程 >

CentOS Linux程序自启动脚本

时间:2014-10-06 22:44来源:电脑教程学习网 www.etwiki.cn 编辑:admin

程序自启动脚本实质上就是一个shell脚本。以简单的Tomcat自启动脚本为例,Tomcat使用安装目录下的startup.sh启动、shutdown.sh停止,我们可以把它们写到一个启动脚本里。

建立自启动脚本:

vim /etc/init.d/tomcat

输入如下内容:


#!/bin/bash
#
# tomcat startup script for the Tomcat server
#
# chkconfig: 345 80 20
# description: start the tomcat deamon
#
# Source function library
. /etc/rc.d/init.d/functions

prog=tomcat
JAVA_HOME=/usr/java/jdk1.6.0_27
export JAVA_HOME
CATALANA_HOME=/usr/local/tomcat
export CATALINA_HOME

case "$1" in
start)
echo "Starting Tomcat..."
$CATALANA_HOME/bin/startup.sh
;;

stop)
echo "Stopping Tomcat..."
$CATALANA_HOME/bin/shutdown.sh
;;

restart)
echo "Stopping Tomcat..."
$CATALANA_HOME/bin/shutdown.sh
sleep 2
echo
echo "Starting Tomcat..."
$CATALANA_HOME/bin/startup.sh
;;

*)
echo "Usage: $prog {start|stop|restart}"
;;
esac
exit 0
说明:
这里的启动脚本可以把它分为3个部分,第一部分是申明启动脚本和注释,第二部分是定义路径的变量,第三部分是一个case...in条件选择结构。

第一部分
1)因为是个shell脚本,所以开始必须要有#!/bin/bash这一行,这里表示使用的shell是bash。
2)# chkconfig: 345 80 20是让chkconfig命令能够识别这个启动脚本,必须要有,其余带#的都是注释说明。
3). /etc/rc.d/init.d/functions是在当前shell下执行functions这个文件,而不是在子shell中执行。它类似于库函数,后面的启动脚本可能会调用functions内的基础函数。

第二部分
1)从prog=tomcat开始,设定了3个变量,使用prog定义脚本名称,JAVA_HOME定义JDK安装目录,CATALANA_HOME定义tomcat安装目录。
2)export命令是使定义的变量在子shell中也可以使用。

第三部分
1)第三部分是一个case条件选择结构,语法结构如下:

case 字符串 in
值1 )
操作 ;;
值2 )
操作 ;;
值3 )
操作 ;;
...
*)
操作 ;;
esac2)$1是一个位置参数,位置参数是一种在调用shell程序的命令行中按照各自的位置决定的变量,是在程序名之后输入的参数。位置参数之间用空格分隔,shell取第一个位置参数替换程序文件中的$1,第二个替换$2,依次类推。
3)$CATALANA_HOME/bin/startup.sh表示启动tomcat。
4)$CATALANA_HOME/bin/shutdown.sh表示停止tomcat。
5)sleep 2 表示休眠2秒。
6)exit 0 表示退出。

------分隔线----------------------------
标签(Tag):Linux Android Ubuntu Unix 操作系统 fedora debian
------分隔线----------------------------
推荐内容
猜你感兴趣