bat脚本 自动查询端口并自动结束占用端口的进程
时间: 2023-11-22 15:54:38 浏览: 319
以下是一个简单的BAT脚本,可以自动查询指定端口是否被占用,并自动结束占用该端口的进程:
```bat
@echo off
setlocal enabledelayedexpansion
set /p port=请输入要查询的端口号:
netstat -ano | findstr :%port% >nul
if %errorlevel%==0 (
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :%port%') do (
set pid=%%a
echo 端口 !port! 被占用,进程ID为 !pid!
taskkill /f /pid !pid!
echo 进程已结束
)
) else (
echo 端口 !port! 没有被占用
)
pause
```
使用方法:
1. 双击打开记事本,将上述代码复制进去;
2. 将代码中的“请输入要查询的端口号”替换为你想要查询的端口号;
3. 将文件保存为“xxxx.bat”(xxxx为你自定义的文件名),记得选择UTF-8编码;
4. 双击运行脚本,根据提示即可查询并结束占用指定端口的进程。
相关问题
写一个bat脚本,监控8080端口,自动重启
好的,以下是一个可以监控8080端口并自动重启服务的.bat脚本:
```
@echo off
:while
echo Checking for port availability...
netstat -aon | findstr :8080 > nul
if %errorlevel% equ 0 (
echo Port 8080 is open
) else (
echo Port 8080 is closed
echo Restarting service...
net stop servicename
net start servicename
)
timeout /t 5 > nul
goto :while
```
请注意,上述脚本假设您已经将监视的服务命名为“servicename”。如果您的服务名称不同,请将“servicename”更改为正确的名称。
您可以将此脚本保存为.bat文件,并在需要时运行它。请注意,此脚本将无限循环,每5秒钟检查一次端口。如果您想停止脚本,请按Ctrl + C。
关闭445端口bat脚本
将以下内容写入记事本并保存为bat可执行文件即可关闭445端口:
```
REG ADD HKLM\SYSTEM\CurrentControlSet\services\NetBT\Parameters /v SMBDeviceEnabled /T REG_QWORD /D 0 /F
sc config LanmanServer start= disabled
net stop lanmanserver /y
net stop rdr
net stop srv
net stop netbt
```
请注意,关闭445端口可能会影响某些网络功能,请在操作之前做好备份和确认。
阅读全文