(Windows)关闭进程及其端口及进程cmd窗口bat脚本

首先开启一个java进程的窗口

@echo off
title 窗口名称可自定义
java -jar D:\jar包所在目录\运行程序jar包名称.jar --spring.config.location=D:\jar包引用外部配置文件目录\application.yml
pause;

根据运行程序jar包名称获取PID关闭进程

@echo off
for /f "delims= " %%a in ('jps -lv ^| find /i "D:\jar包所在目录\运行程序jar包名称.jar"') do set PID=%%a
taskkill /f /t /PID %PID%
exit
pause

根据端口号关闭进程并根据窗口名称关闭窗口(taskkill /f /t /fi “WINDOWTITLE eq 窗口名称” 根据窗口名称关闭指定窗口)

@echo off
set port=3002
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%port%"') do (taskkill /t /f /pid %%m)
taskkill /f /t /fi "WINDOWTITLE eq 窗口名称"
exit
pause

windows 关闭指定端口服务和程序bat脚本
将以下内容复制到文本中,将文本后缀改为bat后双击即可运行。

@Echo Off
:: created by tarzan LIU
 
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do (
  set "DEL=%%a"
)
call :ColorText 09 "POWER BY CITRUS"
echo.
goto cmdmain
 
:cmdmain
set /p port=请输入指定端口:
 
 
if  "%port%" == "" (
  echo.
  call :ColorText 0c "无效端口"
  echo.
  echo.
  goto cmdchoice        
)
 
 
for /f "tokens=5" %%a  in ('netstat /ano ^| findstr %port%') do ( set PidList=%%a)
 
if  "%PidList%" == "" (
  echo.
  call :ColorText 0c "进程不存在"
  echo.
  echo.
  goto cmdchoice
)
 
for /f "tokens=1" %%b in ('tasklist ^| findstr %PidList%') do ( set PName=%%b)
 
echo.
echo =========================
echo.
echo.
echo *端口号为(%port%)PID(%PidList%)
echo.
echo.
call :ColorText 0a "        %PName%"
echo.
echo.
echo =========================
echo.
set "select="
 
echo.
echo.是否关闭该进程
echo  0:echo. 1:echo. 2: 查看端口使用进程和服务
set/p select=请选择:
 
if "%select%"=="0" (goto cmd3)
if "%select%"=="1" (goto cmd1)
if "%select%"=="2" (goto cmd2)
echo.
call :ColorText 0c "无效字符,即将退出"
echo.
echo.
goto cmd3
 
:cmdchoice
set "selectmore="
 
set/p selectmore=是否查看所有进程(0:, 退出,1:):
 
if "%selectmore%"=="0" (goto cmd3)
if "%selectmore%"=="1" (goto cmd2)
echo.
call :ColorText 0c "无效字符,即将退出"
echo.
echo.
goto cmd3
 
:cmd1
echo 关闭进程中...
taskkill /f /pid %PidList%
echo 进程已关闭
PAUSE >null
 
:cmd2
netstat -ano |findstr %port%
tasklist |findstr %PidList%
goto cmdmain
 
:cmd3
pause
exit
 
:ColorText
echo off
<nul set /p ".=%DEL%" > "%~2"
findstr /v /a:%1 /R "^$" "%~2" nul
del "%~2" > nul 2>&1
goto :eof

如果cmd窗口中乱码,编辑文本,选择编码为ANSI另存为保存即可
在这里插入图片描述

链接:https://www.jianshu.com/p/83bbcea88715

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值