批量查找变量中的字符串

时间:2016-10-15 10:11:23

标签: string batch-file if-statement cmd

我正在尝试检查某个输出(!output!)是否包含特定字符串(“ENABLED”)。

setlocal enabledelayedexpansion
FOR /F %%C IN (%nodeFile%) DO (
set output=dashd-cli masternodelist status %%C
!output!
IF NOT "!output!"=="!output:ENABLED=!" (
    echo OFFLINE
)
)
goto :done

!输出的输出!是其中之一:

节点运行时:

{
    "111.111.111.111:1111" : "ENABLED"
}

节点未运行时:

{
}

现在,当节点没有显示任何输出时,它不会回显任何内容,这意味着它找不到字符串“ENABLED”。

1 个答案:

答案 0 :(得分:0)

你只是想做这样的事吗?

@ECHO OFF
FOR /F "USEBACKQ" %%a IN ("%nodeFile%") DO (
    dashd-cli masternodelist status %%a|Find "ENABLED"||(Echo= %%a - OFFLINE))
PAUSE