Bat中实现简单运维脚本示例-启动redis、检测指定端口是否占用、占用则杀死进程、等待指定秒数、启动jar包

场景

某windows服务器上部署连接redis的某jar包。

需要先启动redis,然后等待10秒,确保redis启动,然后检测jar包对应的端口是否被占用

如果被占用,则将对应端口进程杀死,

最后启动jar包。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi

实现

新建bat脚本内容

复制代码
@echo off
chcp 65001 >nul
echo ==============================================
echo           正在启动 Redis 服务...
echo ==============================================

:: 1. 启动 Redis
cd /d "D:\dataUpload\Redis-x64-3.0.504"
start "Redis Server" redis-server.exe redis.windows.conf

:: 2. 等待 10 秒
timeout /t 10 /nobreak >nul

echo.
echo ==============================================
echo          检查并释放 996 端口...
echo ==============================================

:: ===================== 核心代码 =====================
:: 查找996端口对应的进程PID
for /f "tokens=5 delims= " %%a in ('netstat -ano ^| findstr ":996"') do (
    if not "%%a"=="0" (
        echo 找到占用996端口的进程 PID: %%a
        :: 强制杀死该进程
        taskkill /f /pid %%a >nul 2>&1
        echo 已杀死占用996端口的进程
    )
)
:: ====================================================

echo.
echo ==============================================
echo           正在启动数据上传程序...
echo ==============================================

:: 3. 启动 jar 包
cd /d "D:\dataUpload"
title dataUpload!!!
echo 正在启动 ...
java -jar dataUpload.jar

pause

然后将此Bat加入到开机自启动目录即可:

win+r

shell:startup

复制此bat即可。

有可能被杀毒软件拦截,选择允许即可。

相关推荐
黑贝是条狗18 小时前
Excel批量处理工具
linux·运维·excel
实心儿儿18 小时前
Linux —— 进程间通信 - 匿名管道
linux·运维·服务器
phltxy18 小时前
Redis Set:原理、命令与实战场景详解
数据库·redis·缓存
wgl66652018 小时前
进程间通信
linux·运维·服务器
悠悠1213818 小时前
从0到1掌握Ansible:让自动化运维不再是梦想
运维·自动化·ansible
璞华Purvar18 小时前
VC PE投资管理系统选型的核心考量因素有哪些?(2026选型指南)
大数据·运维·人工智能
b55t4ck18 小时前
Linux CVE-2026-31431(Copy Fail)漏洞深入复现分析(待完善).md
linux·运维·服务器
前端老曹18 小时前
Linux 指令完整版
linux·运维·服务器
广州服务器托管18 小时前
[2026.5.12][IT工坊]WIN11.26300.8376专业工作站版[PIIS]中简 深度优化
运维·人工智能·windows·计算机网络·可信计算技术
草莓熊Lotso18 小时前
【Linux网络】从 0 到 1 实现高性能 UDP 聊天室:深入拆解 Linux 网络编程与线程池架构
linux·运维·服务器·网络·数据库·c++·udp