在当前路径下输入
chmod 777 脚本名
给脚本授权,
然后就可以执行脚本
./脚本名 
 
777 是最高权限,有读、写、执行权限;和属组用户和其他用户的读、写、执行权限。
其他权限分别是
-rw------- (600) -- 只有读写权限。
-rw-r--r-- (644) -- 只有有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) -- 只有有读、写、执行权限。
-rwxr-xr-x (755) -- 有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) -- 有读、写、执行权限;而属组用户和其他用户只有执行权限。
 
read -p "请按任意键继续." var            --脚本中进行暂停,需要按任意键继续……

自用部署脚本1

cd /mnt/jfinalgit/web
echo "############## 进入 /mnt/jfinalgit/web 目录 ##############"
rm -rf *
rm -rf .*
git clone git**********.git
echo "############## git拉取完毕,开始打包 ##############"
cd /mnt/jfinalgit/web/jfinalweb
mvn package
echo "############## maven打包完毕,关闭tomcat复制war包 ##############"
killall java
sleep 3s
cd /mnt/apache-tomcat-9.0..M4/webapps/jf
cp /mnt/jfinalgit/web/jfinalweb/target/jfinalweb-V0..war .
jar -xvf jfinalweb-V0..war
cd /mnt/
echo "############# 进入mnt目录开始启动tomcat,并查看日志###########"
./tomcatstart
tailf catalina.out &

脚本2

buildpkg=/mnt/tbkmark-tomcat-9.0..M4/gitsourcepkg/
buildpkgName=tbkmark-0.0.-SNAPSHOT.war
targetpath=/mnt/tbkmark-tomcat-9.0..M4/gitsourcepkg/tbk_market/target/tbkmark-0.0.-SNAPSHOT.war
projectName=/mnt/tbkmark-tomcat-9.0..M4/gitsourcepkg/tbk_market
tomcatName=tbkmark
projectPath=/mnt/tbkmark-tomcat-9.0..M4/webapps/ROOT
startpath=/mnt/tbkmark-tomcat-9.0..M4/bin/startup.sh
logpath=/mnt/tbkmark-tomcat-9.0..M4/logs/catalina.out
echo "##### start build tbkmark #####"
cd $buildpkg
rm -rf *
git clone https://git.oschina.net/mrning001/tbk_market.git
echo "##### git pull ok #####"
cd $projectName
mvn package -Dmaven.test.skip=true
echo "##### maven pkg ok #####"
ps -ef | grep tomcat | grep $tomcatName | awk '{print $2}'|xargs kill -
cd $projectPath
rm -rf *
cp $targetpath $projectPath
jar -xvf $buildpkgName
echo "##### kill tomcat and cp pkg to root ok !!! #####"
\cp /application.properties /mnt/tbkmark-tomcat-9.0..M4/webapps/ROOT/WEB-INF/classes
sh $startpath
sleep 5s
tailf -n $logpath

【根据ps -ef查找出指定进程并且杀掉,然后重启tomcat进程】

ps -ef|grep xxxxName|grep tomcat|awk '{print $2}'|xargs kill -
sh /mnt/data1/esports/tomcat-8.0./bin/startup.sh

【SVN打包部署脚本】

 
projectName=projectName
targetMathineme=duoyou
targetMathine=esports@112.xxx.xxx.34
targetTomcatWebAppsDir="~/tomcat-8.0.35/webapps"
svnPath=http://xxxx.xxx.xxx
checkoutDir="checkout"
targetWarName=projectName
mvn scm:bootstrap -DconnectionUrl=scm:svn:$svnPath -DcheckoutDirectory=$checkoutDir -Dgoals=package -Dprofiles=skipTest,dev -DmavenHome=""
if [ -f "./$checkoutDir/target/$targetWarName.war" ]; then
echo "File projectName Generate success!"
scp $checkoutDir/target/$targetWarName.war $targetMathine:$targetTomcatWebAppsDir/$targetWarName.war.tmp
ssh $targetMathine "mv $targetTomcatWebAppsDir/$targetWarName.war.tmp $targetTomcatWebAppsDir/$targetWarName.war"
fi
echo "projectName.war publish success. "

Linux 一键部署脚本的更多相关文章

  1. 源码编译安装Apache-附一键部署脚本

    1.进入apache官网https://www.apache.org/,点击Download 2.如图选择 3.选择httpd 4.下载两个包,2.2为CentOS6使用,2.4为CentOS7使用 ...

  2. ceph集群一键部署脚本

    分布式存储ceph相信大家比较熟悉了.某项目临时要做一个40个节点的存储集群.所以写了这个脚本. 一键部署脚本如下: git clone https://github.com/luckman666/d ...

  3. 单个机器部署redis集群模式(一键部署脚本)

    一.检查机器是否安装gcc.unzip.wget 二.部署模式 #模式1: 将所有主从节点以及sentinel节点部署在同一台机器上 #模式2: 将一个数据节点和一个sentinel节点部署在一台机器 ...

  4. Centos 环境一键部署脚本(shell脚本)

    谨以此文纪念吊炸天的Centos环境一键部署方案的新鲜出炉 辛苦大半年,产品准备上线了,BOSS亲自体验安装部署,看着超过200+页的安装文档直接崩溃了(需要部署23个基础服务),经历了超过3个小时的 ...

  5. redis一键部署脚本

    1.新建一个名为 auto_install_redis.sh的文件 2.将下面脚本拷贝到文件中,具体步骤在注释里面 #环境 linux #一键安装redis,在linux环境中使用脚本运行该文件(sh ...

  6. rabbitmq一键部署脚本

    1.新建一个名字叫 auto_install_rabbitmq.sh  的文件 2.将下面脚本拷贝到文件中,具体操作步骤在注释里面 #环境 linux #一键安装rabitmq,在linux环境中使用 ...

  7. 福利来了~Linux一键部署包,环境安装不用愁!!!

    前言 昨天一哥们的弟弟突然问我有没有部署过的Linux,公司连个运维都没有,服务器都要后端部署.... 你有没有相似的遭遇呢?公司规模小,后端即是运维,一份工资干两份活,哈哈~ 为了解决这老弟的困惑, ...

  8. mysql5.7.25集群部署和方案设计(附PXC一键部署脚本)

    还记得我们之前部署mysql集群有多麻烦嘛?波哥来救你们啦!~ 我已将项目上传到了我的github仓库中,大家可以点击仓库地址出现的连接登录查看相应的代码!如果觉得不错别忘了转发.点赞哦! 部署步骤: ...

  9. kubernetesV1.13.1一键部署脚本(k8s自动部署脚本)

    部署k8sv1.13.1只需要下面几步就OK了: git clone https://github.com/luckman666/deploy_Kubernetes-v1.13.1.git cd de ...

随机推荐

  1. [转帖]postgresql 在等待服务器启动时超时

    postgresql 在等待服务器启动时超时 2018年12月24日 :: my_name_nb 阅读数 版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接 ...

  2. python *****【异常处理】*****

    try: val = input('请输入数字:') num = int(val) except Exception as e: print('操作异常') # import requests # # ...

  3. winform 中如何获取debug目录的路径

    项目中需要在debug启动目录创建文件夹,所以先获取debug路径: var debugPath = System.AppDomain.CurrentDomain.BaseDirectory;

  4. day03-04

    光驱 历史的东西 远程管理卡 ​ 它的作用是通过网络远程(异地)开关服务器,并可以查看服务器开关的过程等信息,早期(2010年以前),服务器托管在IDC机房,出问题,还得跑机房或者请机房的人管理,有了 ...

  5. lsof---列出当前系统打开的文件信息

    lsof---list open file,一个列出当前系统打开文件的工具 1.lsof查找原理 在Linux系统中,系统为了方便管理进程,会在/proc下为每一个运行中的进程创建一个目录,目录名就是 ...

  6. 高并发之nginx限制

    Nginx限速模块分为哪几种?按请求速率限速的burst和nodelay参数是什么意思?漏桶算法和令牌桶算法究竟有什么不同?本文将带你一探究竟. 我们会通过一些简单的示例展示Nginx限速限流模块是如 ...

  7. 修改this的指向

    call var a={ name:'xuux', fn:function(a,b){ console.log(a+b); console.log(this);//{name: "xuux& ...

  8. 在vue-cli项目中使用bootstrap

    1.安装插件 npm install jquery --save npm install bootstrap --save npm install popper.js --save 2.配置webpa ...

  9. \ n是将输出换行符的javascript的转义符。

    \ n是将输出换行符的javascript的转义符.<br/>是表示新文本行的HTML标签.JavaScript是一种脚本语言,而HTML是一种标记语言.如果使用javascript的文档 ...

  10. OpenStreetMap全球库

    https://www.loveyu.org/5344.html https://www.jianshu.com/p/957aa4a933d7 https://blog.csdn.net/mrib/a ...