写了个关于tomcat项目部署脚本 shell
#!/bin/bash
tomcat_project_path=" /server/tomcat"
tomcat_cp_path="/root/tools/apache-tomcat-8.5.30/*"
title="
############################################ \n\t<欢迎进入项目创建系统>\n ############################################
\n
"
# 需要将替换的选项如
#/bin/setclasspath.sh 设置为 java_home_bak= calalina_home_bak
#/conf/server.xml 设置为 <Server port=xxxx <Connector port=xxxx <Context docBase=xxxx #java目录 /server/java/jdk1..0_161
#tomcat目录 /server/tomcat/项目名字
#webroot目录 /www/名字/webroot tomcat_ver=""
jdk_ver="\t1:jdk1.6\n\t2:jdk1.7\n\t3:jdk1.8"
jdk_path=" /server/java"
jdk_list=("'$jdk_path/jdk1.6.0_31'" "'$jdk_path/jdk1.7.0_79'" "'$jdk_path/jdk1.8.0_161'") webroot_path=" /www"
test_setclasspath="/root/setclasspath.sh" function login(){
while true;do
echo -e $title
read -p "输入项目名称:" project
read -p "输入Sever端口名:" sport
read -p "输入Connector端口号:" cport
while true;do
jdk=("1:jdk1.6" "2:jdk1.7" "3:jdk1.8")
for i in ${jdk[*]}
do
echo -e $i
done
read -p "选择JDK版本:" num
if [[ $num -gt ]] && [[ $num -lt ]];then
echo "ok"
jdk_version=${jdk_list[$(($num-))]}
jdk_easy=${jdk[$(($num-))]}
echo -e "所选版本为$jdk_easy"
break
else:
echo "no ok" fi
done
read -p "输入项目存放路径名字:" wname #webroot存放路径 用于修改server.xml文件
tomcat_webroot_path="$webroot_path/$wname/webroot"
echo -e "\t项目名:$project\n\tJDK版本:$jdk_easy\n\tTomcat项目存放:$tomcat_project_path/$project\n\tServer端口号:$sport\n\tConnector端口号:$cport\n\t项目代码存放路径:$tomcat_webroot_path"
read -p "1:确认|2:取消" num
if [[ $num == "" ]]
then
tomcatlist
if [[ $flag == "tru" ]];then
echo -e "\n\n"
echo "##########################################"
#echo "项目名称:$project"
#echo "jdk路径:$jdk_version" #jdk目录
#echo "tomcat代码存放路径:$tomcat_webroot_path"
#echo "tomcat项目路径:$tomcat_project_path/$project"
#echo "Server端口号:$sport"
#echo "Connector端口号:$cport"
echo -e "\t项目名:$project\n\tJDK版本:$jdk_easy\n\tTomcat项目存放:$tomcat_webroot_path\n\tServer端口号:$sport\n\tConnector端口号:$cport\n\t项目代码存放路径:$tomcat_webroot_path"
mkdir -p $tomcat_project_path/$project
cd $tomcat_project_path/$project
cp -ra $tomcat_cp_path $tomcat_project_path/$project
sed -i "s#java_home_bak=#JAVA_HOME=$jdk_version#g" bin/setclasspath.sh >/dev/null
sed -i "s#catalina_home_bak=#CATALINA_HOME='$tomcat_project_path/$project'#g" bin/setclasspath.sh >/dev/null
sed -i "s#<Server port=xxxx#<Server port='$sport'#g" conf/server.xml >/dev/null
sed -i "s#<Connector port=xxxx#<Connector port='$cport'#g" conf/server.xml >/dev/null
sed -i "s#<Context docBase=xxxx#<Context docBase='$tomcat_webroot_path'#g" conf/server.xml >/dev/null
echo -e "\t项目创建成功!!!"
echo "##########################################"
echo -e "\n\n" fi
elif [[ $num == "" ]]
then
echo ""
else
echo "输入有误,请重新输入"
fi
done
}
function tomcatlist(){
flag="tru"
for i in $(ls $tomcat_project_path)
do
if [[ $project == "$i" ]]
then
echo "项目$i已存在,无法创建,请重新输入"
flag="fal"
break
fi
done
}
login
使用图

写了个关于tomcat项目部署脚本 shell的更多相关文章
- linux系统tomcat项目部署和tomcat访问日志
一.只用ip地址访问 先把端口号改成80,然后用 <Host name="localhost" appBase="webapps" 137 ...
- Tomcat项目部署问题记录
Tomcat项目部署问题记录 1. -bash: ./startup.sh: Permission denied 问题: 新装tomcat后,执行启动命令会出现 -bash: ./startup.sh ...
- Linux CentOS6.8 项目部署脚本实现
面向刚接触linux环境的新手,老鸟勿拍~ 部署环境及配置: tomcat9,maven3.3.9,git 1.12.0 ##定义一些变量,将需要用到的 source目录,项目目录,名称等定义变量,方 ...
- Tomcat项目部署
一 之前一直是在ecplise 利用tomcat插件的形式启动项目,这里可以通过选择server.xml和context files两种方式这里选择这两者方式,都是会在tomcat/bin下产生对应的 ...
- Tomcat项目部署方式
一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JS ...
- tomcat 项目部署问题
我本地Tomcat版本:Apache Tomcat/8.0.3.0 服务器端:Apache Tomcat/6.0.37 JVM都是:1.7.0_40-b43 之前项目运行正常,在我更新了一些模块后,重 ...
- 解释Eclipse下Tomcat项目部署路径问题(.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps)
配置eclipse的开发环境,配置jdk的安装路径和tomcat安装路径.在eclipse下建立Dynamic Web Project工程zhgy,在使用eclipse中new一个tomcat,通过启 ...
- Tomcat项目部署的三种方法
第一种方法如下:直接把我们的项目文件夹放到tomcat里面,在这里我自己做的是一个测试项目oa,如图 启动tomcat,打开浏览器,输入localhost/oa 即可打开你的文件,注意 :访问的时候 ...
- Javaweb Tomcat 项目部署方式
一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP ...
随机推荐
- 越努力越幸运--动态数组vector
最近回忆山哥写的stl,觉得很好用,也写了一份. 感谢群里的大佬帮忙review,还是很多的问题的. code:https://github.com/HellsingAshen/vector_c.gi ...
- U盘安装CentOS 7系统
首先,本文适合新的不能再新的新手 小白出身的轩轩,由于最近正在学习Linux的centos系统,所以突发奇想,为什么不把轩轩的本机也安装一个centos系统呢,让两个系统互不干扰,想到就做到,遂开始动 ...
- django 用户上传文件media的存储访问配置1
1. 首先新建文件夹media 后 在项目setting中具体配置: MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media ...
- 【BZOJ 1191】[HNOI2006]超级英雄Hero
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 二分图的最大匹配. 因为要答下一题,这一题必须先答完. 所以如果某道题没有匹配了. 那么就直接break掉. [代码] #inclu ...
- 2015 Multi-University Training Contest 2 Buildings
Buildings Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total ...
- java学习记录笔记--继承,super,Object类
继承: Java中的继承是单继承的. 1.子类拥有父类的全部属性和方法. 可是属性和方法的修饰符不能使private. 2.能够复用父类的代码. 方法的重写须要满足的条件: a.返回值类型 b.方法名 ...
- hdoj--2098--分拆素数和(水题)
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- Linux安装PHP MongoDB扩展
本文将讲述一下本人安装MongoDB扩展的过程,大家可以略作参考 安装环境 Linux环境:CentOS 6.5 Apache版本:2.4 PHP版本:5.4.3 MongoDB版本:2.6.5 一. ...
- CUDA笔记12
这几天配置了新环境,而且流量不够了就没写. 看到CSDN一个人写了些机器学习的笔记,于是引用一下http://blog.csdn.net/yc461515457/article/details/504 ...
- 14个优秀 JS 前端框架、库、工具及其使用时机
这篇文章主要描述现今流行的一些 Javascript web 前端框架,库以及它们的适用场景. 新的 Javascript 库层出不穷,从而Web 社区愈发活跃.多样.在多方面快速发展.详细去描述每一 ...