闲来无事,就自己写一个shell脚本,方便自己以后在服务器上部署tomcat下的项目。我本地用maven打包,然后每次都要人工去切换一堆堆目录,有点繁琐,所以我写了下面的shell脚本。

#! /bin/sh

usage()
{
echo "Usage: ${0##*/} {start|stop} "
exit 1
} start()
{
#切到tomcat下bin路径
echo "************梦似烟花心似水,同学少年不言情****************"
cd /root/tomcat/apache-tomcat-8.0.30/bin
#拉服务起来
sh startup.sh
echo "========>>启动服务成功<<=================="
ps -ef | grep tomcat | grep -v "grep"
echo "========>>移动日志成功<<=================="
# cp /root/tomcat/apache-tomcat-8.0.30/logs/catalina.out ~
# mv ~/catalina.out ~/log
ln -s /root/tomcat/apache-tomcat-8.0.30/logs/catalina.out ~/huhu.log
echo "************不会一辈子兵荒马乱*************************"
} stop()
{
#切到tomcat下webapps路径
cd /root/tomcat/apache-tomcat-8.0.30/webapps
#删掉项目
rm -rf suiyi*
echo "************梦似烟花心似水,同学少年不言情****************"
echo "========>当前服务进程<=================="
ps -ef | grep tomcat | grep -v "grep"
echo "=======>>删除项目成功<<================="
#输出tomcat进程
(ps -ef|grep tomcat|grep -v grep)|awk '{print $2}'|xargs kill -9
echo "=======>>终止服务成功<<================="
rm -rf ~/huhu.log
echo "************不会一辈子兵荒马乱*************************"
} [ $# -gt 0 ] || usage APP_HOME=`dirname $(cd "$(dirname "$0")"; pwd)` if [ $1 = "start" ]; then
start
elif [ $1 = "stop" ]; then
stop
elif [ $1 = "-m" ]; then
main $2
else
usage
fi

这样子的话就很方便了,现在我自己的服务器上还没有装SVN服务器和maven,到时候装上这2个东西,然后修改这个脚本就直接一键来发布了。







自己写的一个tomcat发布脚本的更多相关文章

  1. 基于七牛Python SDK写的一个批量下载脚本

    前言 上一篇基于七牛Python SDK写的一个同步脚本所写的脚本只支持上传,不支持文件下载. 虽然这个需求不太强烈,但有可能有人(在备份.迁移时)需要,而官方有没提供对应的工具,所以我就把这个功能也 ...

  2. 把登录和退出功能单独写到一个公共.py脚本,其它用例test1,test2调用公共登录,退出函数

    公共登录/退出函数模块(login_exit.py): #coding:utf-8import timedef login(driver, username, password):#此处的driver ...

  3. 任务:写一个tomcat自启动脚本

    写一篇<gitlab无法启动了应该怎么办>

  4. tomcat发布脚本

    #!/bin/bash #发布相关目录Tomcat_log='/home/CodePub/tomcatlog'dev_package='/home/CodePub/package'old_packag ...

  5. 写了一个RenderInBackground的脚本

    某主管希望write节点有多线程渲染的功能,而nuke中的render in background功能恰恰可以多个渲染任务同时执行,于是我考虑使用这个方法来实现. 调 试过程中发现renderinba ...

  6. python3 写的一个压测脚本(有待开发)

    import requests import queue import threading import time status_code_list = [] exec_time = 0 class ...

  7. python+imageMagick写的一个压缩图片脚本

    !/usr/bin/python import os import cPickle as p import re import Image def imageCompre(imagedir = '.' ...

  8. 大型项目linux自动化版本发布脚本(shell)之tomcat、nginx服务脚本

    开发十年,就只剩下这套Java开发体系了 >>>   最近,又临近博主所负责的一个大型项目的发版了.之前有提到过,该项目涉及到30-40台服务器的发版.且项目客户规定发版需在晚上10 ...

  9. 手把手用Monkey写一个压测脚本

    版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有. 允许有条件转载,转载请附带底部二维码. 一.为什么需要一个测试脚本? 昨天讲解了Android Monkey命 ...

随机推荐

  1. webgl鱼眼算法

    在网页上面实现,采用的是球面映射和材质线性映射,这里注意的是用线性映射保留了球面的感觉,而不是采用sin映射,sin映射在边缘会产生很难看的效果. 最后效果如下:

  2. LAMP源码安装,搭建zabbix监控

    #LAMP#httpd-2.2.32#mysql-5.7.17-linux-glibc2.5-x86_64 二进制压缩版#php5.3.27 1.系统环境优化检查 sed -i 's/SELINUX= ...

  3. Android Studio C/C++开发环境配置

    Android Studio C/C++开发环境配置  我的开发环境 : Win 10 + android studio 1.5   一, 安装NDK 开发环境: 1.  Settings -> ...

  4. 利用TortoiseGit对Coding项目进行版本管理

    Git配置: 1),首先去Git官网下载最新的Git,https://git-for-windows.github.io/ 2),下载对应的版本,然后一路next点击安装. Git与Coding联通 ...

  5. 常见linux命令用法介绍

    su switch user 用途:用于用户之间的切换 格式: su - USERNAME切换用户后,同时切换到新用户的工作环境中 su USERNAME切换用户后,不改变原用户的工作目录,及其他环境 ...

  6. struts2(六)之ognl表达式与ActionContext、ValueStack

    前言 前面已经把struts2讲内容说了一半了,我写的很详细,希望对博友们有帮助. 一.OGNL表达式语言概述 1.1.OGNL表达式简介 百度上是这样说: OGNL是Object-Graph Nav ...

  7. bzoj:1776: [Usaco2010 Hol]cowpol 奶牛政坛

    Description 农夫约翰的奶牛住在N (2 <= N <= 200,000)片不同的草地上,标号为1到N.恰好有N-1条单位长度的双向道路,用各种各样的方法连接这些草地.而且从每片 ...

  8. Saving James Bond(dijk)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1245 Saving James Bond Time Limit: 6000/3000 MS (Java ...

  9. const类型变量的详细解读

    const类型变量--------------------------------------int i;const int *p; --------------------------------- ...

  10. c++只能编译无法运行或许缺少命令

    -mwindows -lcomctl32 -lwinmm -lws2_32 -lodbc32 -lmysql   -lwinspool1.工具-编译选项-编译器-在连接器命令行加入以下命令:-mwin ...