最近在用jenkins做自动化web部署,web服务器是tomcat。

遇到了这样一个问题:在服务器上执行tomcat的shutdown.bat命令可以正常关机,但用jenkins执行shutdown.bat命令时却经常关闭不了,从而导致重启时报错。后来想到了杀进程的办法来关闭tomcat服务器,但是要怎样才能查到tomcat进程并杀掉呢?

下面是通过端口号查找进程的命令:

1
netstat -ano | findstr 8888 //我的tomcat端口给我改成8888了。

查出来的结果好像这样:TCP 0.0.0.0:8888 0.0.0.0:0 LISTENING 1844

其中最后一项是进程号(PID),要怎么取到PID并杀掉进程呢?

可以使用for语句来操作,for默认是以空格或tab为分割,即上面的结果会分割成5个部分,而pid正好是第5部分的内容,所以命令可以这样写:

1
for /f "tokens=5" %%i in ("netstat -ano | findstr 8888") do taskkill /f /pid %%i /t

taskkill命令是杀进程的,/f表示强制进行,/t表示将其子进程一并杀掉。

这样就不怕tomcat服务关不掉了,重启也正常了,自动化部署成功。

最新文章

  1. bootstrap学习笔记--bootstrap概览
  2. Oracle 删除重复数据只留一条
  3. ArcSDE给Oracle添加SDE函数包
  4. Linux (Ubuntu12.04) 下开发工具安装和使用
  5. 用 Orchard 建立 Dynamics CRM 的入口网站
  6. SSD硬盘的4K对齐
  7. 解的个数(codevs 1213)
  8. ACM 懒省事的小明
  9. python 根据对象和方法名,返回提供这个方法的定义的类
  10. MITK Tutorial (三)
  11. HTML中动态图片切换JQuery实现
  12. 利用linq快速判断给定数字是否包含在某个段范围内
  13. yii2源码学习笔记(七)
  14. var a =a || {}
  15. [Angular 2] The form export from NgFormControl
  16. 在 ASP.NET 网页中不经过回发而实现客户端回调
  17. C++primer原书中的一个错误(派生类using声明对基类权限的影响)
  18. 第五章 MVC之 FileResult 和 JS请求二进制文件
  19. spring boot与kafka
  20. dedecmsv5.7 前台模版里输出变量

热门文章

  1. (转)MyBatis & MyBatis Plus
  2. github上的markdown如何换行
  3. git的软件安装
  4. input标签type=button时,如何禁用和开启按钮
  5. 【Coursera】Security Introduction -Eighth Week(2)
  6. HDU 1711 Number Sequence(KMP模板)
  7. ubuntu16.04上安装Jenkins,获取登陆密码
  8. Ubuntu 下载
  9. Java 打开Excel,往Excel中存入值,保存的excel格式分别是xls和xlsx
  10. 【转】QT获取系统时间,以及设置日期格式