@echo off & setlocal EnableDelayedExpansionecho 启动脚本......
echo 关闭进程......
set obj[0]=8082
set port=0
set pid=0
for /f "usebackq delims== tokens=1-2" %%a in (`set obj`) do (set port=%%bfor /f "tokens=5" %%m in ('netstat -aon ^| findstr ":%%b"') do (set pid=%%m)if "!pid!"=="0" (echo 端口号【!port!】没有占用) else (echo 端口号【!port!】相关进程已杀死)set pid=0
)echo 备份原jar包......
set timestamp=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
set bak_name=generator_%timestamp%
copy D:\ideaproject\generator-jar\generator.jar D:\ideaproject\generator-jar\bak\%bak_name%.jarecho 删除原jar包......
del D:\ideaproject\generator-jar\generator.jar
echo 复制新jar包......
copy D:\ProgramData\Jenkins\.jenkins\workspace\generator-jar\target\generator.jar D:\ideaproject\generator-jar\generator.jar
rem echo 启动jar包......
rem call D:\ideaproject\generator-jar\startJar.batexit

脚本处理步骤

1.设置端口
set obj[0]=8766
set obj[1]=9999

2.循环要处理的端口obj
for /f “usebackq delims== tokens=1-2” %%a in (set obj) do ()

3.查找端口占用的进程pid
for /f “tokens=5” %%m in (‘netstat -aon ^| findstr “:%%b”’) do (
set pid=%%m
)

4.杀死进程pid
taskkill /f /pid !pid!

5.备份jar,复制新jar,调用启动脚本
rem call D:\timingtask\start_timingtask.bat

setlocal enabledelayedexpansion

  • 在批处理中,我们可以用setloacl ENABLEDELAYEDEXPANSION这个命令来启用"延迟环境变量扩展"
  • 在我们启用了"延迟环境变量扩展"后,当CMD在解释涵有嵌套格式的命令时,他会把嵌套的命令一条一条的先执行一次,然后再进行匹配操作
  • 在"延迟环境变量扩展"启用后,CMD会用!号来判断这是不是一个变量,如没启用来变量用%name%这样的格式判断,启用后就用!name!这样的格式判断

@echo off

  • @echo off表示执行了这条命令后关闭所有命令(包括本身这条命令)的回显
  • @的作用就是关闭紧跟其后的一条命令的回显
  • @echo off执行以后,后面所有的命令均不显示,包括本条命令

pause

  • pause也是一条命令,作用就是使程序暂停,也就是输出“请按任意键继续…”的原因。
  • 调试中使用

bat脚本输出乱码

使用editplus,另存以ANSI编码保存

startJar.bat脚本

@echo off
start javaw -jar D:\ideaproject\generator-jar\generator.jar
exit
  • java和javaw两个应用程序都能运行你的程序,并非常相似,但是有一个重要的区别,java通过控制台运行,javaw则不是。
  • javaw会使用与java不同的Local配置进行工作,导致了一些中文问题,而java就是好好的。

windows 根据端口杀进程 部署jar包 批处理脚本相关推荐

  1. windows服务器部署jar包

    服务器部署jar包,提供接口服务常用命令: 我这里打成jar包的名字是zhuganwu_jar(如果你的不是),放到webapps下后,自动解压,里面有一个jar包:zhuganwu.jar 查看进程 ...

  2. Docker安装java环境并部署jar包运行

    Docker安装java环境并部署jar包运行 作为一个前端,了解后端部署jar包也是有必要的,在这里就我学习的,做一个简单的笔记,这里可以结合我的商品的增删改查的java文章一起看. java实现商 ...

  3. 通过.sh文件快捷部署jar包到服务器上

    参考博客:https://blog.csdn.net/qq_43382350/article/details/125008727 直接写一个脚本文件,每次运行这个文件就可以通过.sh文件快捷部署jar ...

  4. docker部署jar包的几种方式

    docker部署jar包的几种方式 前言 使用Dockerfile手动打包jar 简单打包运行 进化:可复用容器 究极进化:jdk镜像直接创建可服用容器 超究极进化:maven插件打包(不推荐) 无聊 ...

  5. 在Linux上部署jar包(不需要Docker,Tomcat等容器)解决xxx.jar中没有主清单属性

    一.springboot在idea中通过package命令打包 将target下生成的jar包拉到linux下,并执行jar包如下 [root@localhost oa]# java -jar new ...

  6. Jenkins部署war包和部署jar包的详细步骤

    目录 零.配置Tomcat 一.自由风格项目远程部署war包 1.创建自由风格项目 2.增加构建步骤 3.增加构建后操作 4.立即构建 5.查看控制台输出 二.创建流水线项目远程部署war包 1.拉取 ...

  7. jar包部署shell脚本编写,在服务器上部署jar包,在Linux服务器上部署服务,设置编码格式,设置内存管理

    准备步骤: 1.安装java环境,知道java安装目录 2.将jar包拖放或发送至服务器中(目录自定义) 一.编写shell脚本,将以下代码放在shell脚本中,将shell脚本放在jar包同级目录下 ...

  8. Dockerfile部署jar包

    1.打包好的jar文件上传到服务器 2.与jar包同目录下新建Dockerfile文件 vi Dockerfile # 基于openjdk FROM openjdk:8-jdk-alpine # 设置 ...

  9. 【Java】Java编写Telnet客户端,连接到Windows的Telnet服务器,执行命令和批处理脚本

    Java编写Telnet客户端,连接到Windows的Telnet服务器,执行命令和批处理脚本,同时解决了中文乱码的问题. 源代码和Jar包在这里下载:http://download.csdn.net ...

最新文章

  1. Android Loader机制全面详解及源码浅析
  2. I/O多路复用——select
  3. [转]TCP(HTTP)长连接和短连接区别和怎样维护长连接
  4. 23种设计模式C++源码与UML实现--适配器模式
  5. 03_TF2 Guide、文档清单(数据输入、估计器、保存模型、加速器、性能调优等)、TF2库和扩展库(TensorBoard、数据集、TensorFlow Hub、概率和统计分析库、图像处理库)
  6. 笨办法学C 练习6:变量类型
  7. java右移位_java中的左移 右移
  8. windbg调试HEAP
  9. Java校招笔试题-Java基础部分(一)
  10. mysql存储过程中删除定时器_mysql创建存储过程,定时任务,定时删除log 莫大人...
  11. [过年菜谱之]杭椒牛柳
  12. 【MCM-2017】2017年数学建模美赛题目原文及翻译-B (个人思路)
  13. 一款好用的Windows引导项管理工具BOOTICE
  14. 织梦模板:用织梦建站的五大好处
  15. 智力题——1红蓝墨水
  16. OpenCV——硬币检测与计数的设计实现
  17. 大厂php笔试题,【大厂必备】2020超经典PHP面试题
  18. 头部主播批量被封,直播电商还有未来吗?
  19. 【资料合集】2018云栖大会上半年深圳、南京、武汉、上海峰会全记录
  20. Programmer-如何从菜鸟变成老鸟?

热门文章

  1. 操作系统bootloader是什么
  2. 剑指offer: 二叉树中和为某一值的路径
  3. 控件用法-WdatePicker 隐藏各按钮
  4. 提高网站排名的5大因素
  5. 岁月蹉跎,人生几何。
  6. 有赞微商城打通对接知乎教程
  7. MySQL与PostgreSQL抓取慢sql的方法
  8. 走钢索的人---走出软件作坊:三五个人十来条枪 如何成为开发正规军(十七)
  9. python资本市场财务数据分析_Python学习教程:用Python进行金融市场文本数据的情感计算...
  10. 计算机毕业设计ssm科技类产品众筹系统9x420系统+程序+源码+lw+远程部署