批處理 檢視程序使用的埠號

2021-06-09 19:31:18 字數 1261 閱讀 6443

@echo off

color 1f

title xp埠-程序查詢

setlocal enabledelayedexpansion

echo ╔-                              -╗

echo   本機開放的埠及使用該埠的程序

echo ╚-                              -╝

echo ------------------------------------

echo          埠號           程序名稱      

echo tcp協議:

::利用netstat命令找出使用tcp協議通訊的埠,並將結果分割;

::將第二個引數(ip加埠)傳給%%i,第五個引數(pid號)傳給%%j;

for /f "usebackq skip=4 tokens=2,5" %%i in (`"netstat -ano -p tcp"`) do (

call :assoc %%i tcp %%j

echo           !tcp_port!           !tcp_proc_name! 

) echo udp協議:

for /f "usebackq skip=4 tokens=2,4" %%i in (`"netstat -ano -p udp"`) do ( 

call :assoc %%i udp %%j

echo           !udp_port!           !udp_proc_name!

) echo 按任意鍵退出

pause>nul

:assoc

::對%1(第乙個引數)進行分割,將第二個引數傳給%%e。在本程式中,%1即為上面的%%i(形式為:ip:埠號)

for /f "tokens=2 delims=:" %%e in ("%1") do (

set  %2_port=%%e

) :: 查詢pid等於%3(第三個引數)的程序,並將結果傳給變數?_proc_name,?代表udp或者tcp;

for /f "skip=2 usebackq delims=, tokens=1" %%a in (`"tasklist /fi "pid eq %3" /fo csv"`) do (

::%%~a表示去掉%%a外面的引號,因為上述命令的結果是用括號括起來的。 

set %2_proc_name=%%~a

)

批處理根據埠號結束程序

新建乙個txt 編碼格式為ansi 將下面的 copy進去,改檔案字尾為.bat,雙擊執行 echo off start clsset i 0 echo echo 顯示所有埠占用情況 echo 檢視指定埠占用情況 echo echo.set p i 請選擇 if i 1 goto item1 els...

CMD檢視埠號 程序資訊

每個internet上的主機和路由器都有乙個ip位址,它包括網路號和主機號,所有ip位址都是32位的,ip位址按照國際標準的劃分為a b c d e五種型別。在計算機 尤其是做伺服器 要盡可能的少開端口 乙個埠只能被乙個程式監聽 使用netstat an可以檢視本機有哪些埠在監聽 使用netstat...

Linux通過埠號檢視使用程序 結束程序

1.檢視程序 引數帶 與不帶有區別 command options 例 ps a 配合其他options引數以展示程序更多引數 ps ef grep 程序名 返回值是該程序的詳細資訊 pgrep 程序名 返回值直接是該程序pid pidof 程序名,同pgrep,不同點pgrep 程序名可以模糊匹配...