首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于PINGS的IF语句

用于PINGS的IF语句
EN

Stack Overflow用户
提问于 2013-08-08 19:56:01
回答 2查看 12.9K关注 0票数 1

我在一个小型IT部门工作,该部门在其他外部办公室有多个用户,并制作了一个基本的(Windows) PING命令批处理脚本,用于PING每个办公室以检查它们是否在线。我只需运行.bat文件并将其留在屏幕的一角。

如果ping失败,则背景变为红色,如果有效,则保持蓝色。内容如下:

代码语言:javascript
运行
复制
@echo off
COLOR 97
:start
echo EXTERNAL CHECK
PING www.google.com
IF %ERRORLEVEL% EQU 0 COLOR 97
IF %ERRORLEVEL% EQU 1 COLOR 47
echo SITE A CHECK
PING x.x.x.x
IF %ERRORLEVEL% EQU 0 COLOR 97
IF %ERRORLEVEL% EQU 1 COLOR 47
echo SITE B CHECK
PING x.x.x.x
IF %ERRORLEVEL% EQU 0 COLOR 97
IF %ERRORLEVEL% EQU 1 COLOR 47
echo SITE C CHECK
PING x.x.x.x
IF %ERRORLEVEL% EQU 0 COLOR 97
IF %ERRORLEVEL% EQU 1 COLOR 47
echo SITE D CHECK
PING x.x.x.x
IF %ERRORLEVEL% EQU 0 COLOR 97
IF %ERRORLEVEL% EQU 1 COLOR 47
goto start

我是一个脚本新手,所以对于任何愚蠢的错误,我深表歉意。如果任何人有任何建议来改善它,我将欢迎他们。我希望这对人们有帮助!抢夺

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-08 20:13:52

尝试:

代码语言:javascript
运行
复制
@echo off
:color 97

:start
echo EXTERNAL CHECK 
PING www.google.com 
call :color

echo SITE A CHECK 
PING www.yahoo.com
call :color

echo SITE B CHECK 
PING 127.0.0.1
call :color

echo SITE C CHECK 
PING www.nowhere.com.fail
call :color 

echo SITE D CHECK 
PING www.failfail.com.fail
call :color
goto start

:color
    IF %ERRORLEVEL% EQU 0 (
        COLOR 97
    ) else (
        COLOR 47
    )
    GOTO:EOF
票数 3
EN

Stack Overflow用户

发布于 2014-09-11 00:02:12

由于大多数更新Windows版本都包含PowerShell,因此您可以将单行PowerShell命令合并到批处理中,或者更改单行的颜色。我的例子:

@ECHO关闭

对于%%i IN (

版本3:服务器1

版本3:服务器2

*

)做(

“如果(测试连接%%i -Count 1 -Quiet) {写入主机"%%i -成功pinged”-F绿色}否则{写入主机"%%i失败“-F红色}

)

希望这能起作用!

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

https://stackoverflow.com/questions/18125398

复制
相关文章

相似问题

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