只知道端口號,怎樣用java來殺死該端口號對應的進程


也可以使用批處理,java等方法,只要java可以調用就行

11 个解决方案

#1


先用端口號找到進程號,再根據進程號來kill

#2


netstat -nap|grep 端口

查到pid
kill -9 pid
叉掉

#3


lsof -i:端口號

查到pid
kill -15 pid

lsof需要安裝,是一個很常用很方便的工具

#4


Java 自身做不到,需要調用外部命令(腳本),參考代碼:

Windows 批處理

@echo off
if "%1" == "" exit /b 1
netstat -ano | find ":%1 " > nul && (
  for /f "tokens=4* delims= " %%i in ('netstat -ano ^| find ":%1 "') do (
     taskkill /f /pid %%j > nul
     exit /b 0
  )
)
exit /b 1

#5


更新了一下,以防止把與外部端口連接的進程給殺了,供為參考:


@echo off
if "%1" == "" exit /b 1
for /f "tokens=3,7* delims=: " %%i in ('netstat -ano') do (
  if "%%i" == "%1" (
   taskkill /f /pid %%j > nul
   exit /b 0
  )
)
exit /b 1

#6


另外,如果是在 linux 環境下,可以使用 fuser 命令:

fuser -n tcp -k <PORT>

#7


查找相應的pid
然后執行kill -9 pid、
用java殺死進程?
沒干過,也不清楚是否能這么干

#8


cmd netstat -ano
找到你的端口號,看他的pid是多少,到windows任務管理器中的進程找到相應的pid,結束進程就可以了。

#9


#10


引用 2 樓 fangmingshijie 的回復:
netstat -nap|grep 端口

查到pid
kill -9 pid
叉掉

正解。。。

#11


引用 10 樓 yankaiwuzhengbo 的回復:
Quote: 引用 2 樓 fangmingshijie 的回復:

netstat -nap|grep 端口

查到pid
kill -9 pid
叉掉

正解。。。

正解……

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com