博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jenkins执行shell脚本,找不到环境变量
阅读量:6110 次
发布时间:2019-06-21

本文共 651 字,大约阅读时间需要 2 分钟。

hot3.png

问题如摘要描述;问题原因分析参考

    解决方案:在需要执行的脚本前加上 /bin/bash -l  使当前登陆用户以登陆模式执行脚本文件

    案例:/bin/bash -l /opt/tomcat/tomcat1601/restart1601.sh

restart1601.sh中的一个坑

    启动tomcat需要先找到tomcat pid 杀掉进程再启动,刚开始写了一个脚本在本机执行可以,但是在jenkins中执行就直接失败了 原因是杀进程的时候把grep自己也杀掉了,然后ssh断开连接

     可用的脚本如下

restart1601.sh

#!/bin/bash#echo "stop tomcat1601..."rm -rf /opt/tomcat/tomcat1601/webapps/sinterfaceps -ef|grep tomcat1601|grep "java"|awk  '{print "kill -9 " $2}' |sh#echo "kill tomcat1601"/bin/bash /opt/tomcat/tomcat1601/bin/startup.sh#echo "start up tomcat1601..."

补充问题:

    当发布后 拷贝新的war包到tomcat/webapps下 重启tomcat之前需要将原来解压的项目文件夹删除,否则tomcat启动时不会重新解压新的war包

转载于:https://my.oschina.net/u/1791512/blog/1553522

你可能感兴趣的文章
预处理、const与sizeof相关面试题
查看>>
爬虫豆瓣top250项目-开发文档
查看>>
Elasticsearch增删改查
查看>>
oracle归档日志增长过快处理方法
查看>>
有趣的数学书籍
查看>>
teamviewer 卸载干净
查看>>
多线程设计模式
查看>>
解读自定义UICollectionViewLayout--感动了我自己
查看>>
SqlServer作业指定目标服务器
查看>>
UnrealEngine4.5 BluePrint初始化中遇到编译警告的解决办法
查看>>
User implements HttpSessionBindingListener
查看>>
抽象工厂方法
查看>>
ubuntu apt-get 安装 lnmp
查看>>
焊盘 往同一个方向增加 固定的长度方法 总结
查看>>
eclipse的maven、Scala环境搭建
查看>>
架构师之路(一)- 什么是软件架构
查看>>
jquery的冒泡和默认行为
查看>>
USACO 土地购买
查看>>
【原创】远景能源面试--一面
查看>>
B1010.一元多项式求导(25)
查看>>