首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据netstat连接状态更改cmd背景色

根据netstat连接状态更改cmd背景色
EN

Stack Overflow用户
提问于 2021-08-22 12:18:34
回答 2查看 158关注 0票数 0

有人知道如何使用netstat命令更改批处理文件/cmd背景色吗?

实际上,我正在使用一个自动刷新的“netstat”命令监视一些银行收购者与服务器的连接。

代码语言:javascript
复制
title BANK #1
netstat -n 1 -an | find "IP_ADDRESS:PORT"
pause

和cmd回声:

如果建立了连接:

代码语言:javascript
复制
TCP    MY_SERVER_IP_ADD:LIST_PORT        REMOTE_IP_ADD:PORT    ESTABLISHED

如果连接失败:

代码语言:javascript
复制
TCP    MY_SERVER_IP_ADD:LIST_PORT        REMOTE_IP_ADD:PORT    SYN_SENT

我需要知道是否是可确定的背景颜色变化取决于状态,我的意思是,当状态是ESTABLISHED,转背景绿色。当状态为SYN_SENT时,将背景变为红色。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-08-22 16:41:17

我建议使用远程服务器的ip地址从连接列表中查找字符串。在字符串解析之后,您可以获得连接状态。根据连接状态更改颜色。

代码语言:javascript
复制
@echo off

REM define remote server IP
set "IP=8.8.8.8"

REM cycle's starting position
:loop

REM pause for 1 second
choice /c YN /t 1 /D Y>NUL

REM parsing connection list
for /f "tokens=4*" %%A in ('netstat -p tcp -na ^| find/i"%IP%"') do (

REM change background color to green
if "%%A"=="ESTABLISHED" color 27 

REM change background color to red
if "%%A"=="SYN_SENT" color 47
)

REM go to cycle's staring position
goto loop
票数 0
EN

Stack Overflow用户

发布于 2021-08-22 18:10:00

下面是一个基于您的请求但易于修改的通用模板

应要求为绿色或红色,其他条件则为白色。

代码语言:javascript
复制
@echo off & Title Bank#1
REM Change the following as required
set "LocalAddress=192.168"
set "ForeignAddress=Chromecast"


:MAIN
timeout 1 > nul
netstat -p tcp | find "%LocalAddress%" | find "%ForeignAddress%" | find "ESTABLISHED"
if %errorlevel%==0 color A0 & echo Still Established & goto main
netstat -p tcp | find "%LocalAddress%" | find "%ForeignAddress%" | find "SYN_SENT"
if %errorlevel%==0 color C0 & echo SYN_SENT & goto main
netstat -p tcp | find "%LocalAddress%"
color E0 & echo Check Incorrect Link Condition Between "%LocalAddress%" and "%ForeignAddress%"
goto Main

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68881259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档