shell脚本执行出现“已杀死”
问题
在编写项目启动脚本时,遇到一个莫名其妙的问题,脚本在尝试kill掉项目原进程后就不再执行了。
shell
echo "关闭jar服务"
pidList=$(ps aux | grep $projectName | grep -v grep | awk '{print $2}')
for pid in $pidList
do
kill -9 $pid
echo 'kill pid '$pid
done
执行结果是到这里就结束了。最后提示 “已杀死”。
解决
其实还是自己挖的坑,但是也是极有可能被忽略的。
问题出在脚本的命名上,正常习惯是 xxxx项目,deploy-xxxx.sh,好了 $projectName=xxxx;导致脚本pidList包含了deploy-xxxx.sh,最后自己kill掉了自己!
- 方案一:修改shell脚本名,不能包含项目名;
- 方案二:修改脚本,使其查找粒度更细;或者过滤掉脚本自身的pid;
一般都采用方案二,毕竟shell脚本命名不和项目名挂钩,后面就有得找了。
原来:pIdList=$(ps aux | grep ${projectName} | grep -v grep | awk '{print $2}')
修改:pIdList=$(ps aux | grep ${projectName}.jar | grep -v grep | awk '{print $2}')
shell脚本执行出现“已杀死”相关推荐
- shell脚本执行及配置文件
linux之shell脚本执行及配置文件 bash脚本执行方法: 1 解释器直接运行/usr/bin/bash bash FOO.sh2 使用路径运行脚本(需要有x权限)chmod +x FOO.sh ...
- linux shell 执行目录,bash shell脚本执行的几种方法
bash shell 脚本执行的方法有多种,本文作一个总结,供大家学习参考. 假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一: ...
- kettle脚本Linux执行,kettle在linux下面用于shell脚本执行:转换或者作业
1 将windows下面创建好的转换,放到Linux某一个文件夹下面.如:把0816_em.ktr文件放到/home/cfj/kettle/testdemo下面. 注意里面的数据库用户名和密码可能需要 ...
- linux shell语法检查或者查看shell脚本执行过程的参数介绍及两种使用方法
shell语法检查或者查看shell脚本执行过程的参数介绍及两种使用方法 一.常用参数概述: set -x 与 set +x 在liunx脚本中可用set -x就可有详细的日志输出,省的老是要echo ...
- shell脚本执行返回的状态码
http://www.cnblogs.com/MyEyes/archive/2012/01/12/2320529.html Linux下一条命令或一个进程执行完成会返回一个一个状态码. 0 === ...
- hive运行mysql脚本_用java代码调用shell脚本执行sqoop将hive表中数据导出到mysql
1:创建shell脚本 1 touch sqoop_options.sh2 chmod 777 sqoop_options.sh 编辑文件 特地将执行map的个数设置为变量 测试 可以java代码 ...
- shell脚本执行时报“bad interpreter: Text file busy“的解决方法
shell脚本执行时报"bad interpreter: Text file busy"的解决方法 参考文章: (1)shell脚本执行时报"bad interprete ...
- Linux shell脚本执行后出现语法错误: 未预期的文件结尾
Windows环境下编写了一个shell脚本,上传到Linux环境中执行,Linux shell脚本执行后出现 语法错误: 未预期的文件结尾. 出现了此错误提示,进行了如下的检查:1.检查Shell脚 ...
- 基于Hadoop的电商广告点击数的分析与可视化(Shell脚本执行与大屏可视化设计)
目录 摘要 大屏可视化预览 如何安装Hadoop集群 数据集介绍 项目部署流程 一键化配置环境和参数 一键化建立hive数据表 Flume配置及自动加载数据到hive中 数据分析 mysql接收数据表 ...
最新文章
- 学习JS面向对象成果,借国庆发布个最新作品与大家交流
- RDKit | 基于随机森林的化合物活性二分类模型
- Asp.Net MVC3.0网站统计登录认证的在线人数
- pytorch计算模型参数量
- 1.1 Java包装类、装箱和拆箱
- SSM中通过okhttp3向接口发送xml格式的请求参数
- PHPstorm中使用数组短语法[],出现红色波浪
- 日本老爷爷坚持17年用Excel作画,我可能用了假的Excel···
- 【转】Task和async/await详解
- html 输入框 相加,JS中,如何实现两个输入框中内容的数字相加?
- linux用户退出时自动清除last记录,Linux查看用户登陆历史记录(last命令的使用)
- 朋友圈如何测试(思维导图)
- php 5.5编译安装教程,CentOS 5.5编译安装Nginx1.0.15+MySQL5.5.23+PHP5.3.10
- 便宜又大碗!AI将画廊轻松搬到自家墙壁;用隐写术在图像中存储文件;免费书·算法高维鲁棒统计;关节式手部模型数据集;前沿论文 | ShowMeAI资讯日报
- java 复制网页文字,网页文字和图片不能复制怎么办
- 2、sudo时候出现no valid sudoers sources found, quitting
- Python给pdf制定权限加密
- 科研教育「双目视觉技术」首选!维视MV-VS220双目立体视觉系统开发平台
- app inventor+tinywebDB远程控制掌控板
- 民勤一中2021高考成绩排名榜查询,淬火砺剑——民勤一中为2021届高三学子助力加油!...