Tomcat创建实例的一个脚本(shell 脚本)

2014-11-24 09:22:21 · 作者: · 浏览: 0

#!/bin/bash


instanceName=$1 【创建的实例】



cd .. >> /dev/null


template_dir=`pwd`


echo $template_dir


if [ ! -d $tc_home ] ;then


mkdir -p $tc_home 【目录不存在就创建】


fi



usemethod(){


echo -e "Usage :sh creattcinstance instanceName


note: The instance name must be as the format: tomcatServerXXX-X


shutdown port (10000 - 10100)


ajp port (8010 - 8079)


http port (8080 - 8190)


https port (8440 - 8540)


jmx port (6900 - 6970) "


}



insnum=`echo $instanceName | awk -F- '{print $2}'`


conffile="$tc_home""$instanceName"/conf/catalina.properties


if [ -n "$insnum" ];then 【-n表示非空串】


cp -rf $template_dir $tc_home$instanceName 【将当前目录中的文件拷贝到新创建的实例中】


echo "shutdown.port=1000$insnum" >> $conffile


echo "ajp.port=801$insnum" >> $conffile


echo "http.port=808$insnum" >> $conffile


echo "https.port=804$insnum" >> $conffile


echo "jmx.port=690$insnum" >> $conffile



else


echo "Warn,please define your instance name in right format."


exit


fi





if [ -f "$conffile" ] ; then


sed -i 's/^M//' $conffile 【删除乱码,注意这个字符可以按住ctrl键,然后按vm就会出现


echo "New instance $instanceName has successfully builded, and "


grep port $conffile 【将创建的那几个端口的相关信息输出】


else


usemethod


exit


fi



cat >> ~/start_$instanceName.sh << EOF


#!/bin/sh


cd /opt/oracle/tomcat/$instanceName/bin


sh catalina.sh start


tail -f /opt/oracle/tomcat/$instanceName/logs/catalina.out


EOF



cat >> ~/stop_$instanceName.sh << EOF


#!/bin/sh


cd /opt/oracle/tomcat/$instanceName/bin


sh catalina.sh stop


tail -f /opt/oracle/tomcat/$instanceName/logs/catalina.out


EOF