如何在一个命令而不是两个命令中输出 Ping 成功或失败?

How do I output Ping Success or Failure in one command, rather than two?

这是我当前代码的一个片段(有效):

PING <ip-address> |find "TTL=">nul && ECHO Responsive> <filename>
PING <ip-address> |find "TTL=">nul || ECHO Unresponsive> <filename>

在做一些 research 时,我发现检查 ERRORLEVEL 有时会给出不正确的结果,所以我选择使用上述方法来记录 [= 的成功或失败12=]。我也觉得它看起来更干净了。

问题 我遇到的问题是,在 IP 地址不可 ping 的情况下,该命令被调用两次,每个 ping 命令都需要一段时间才能完成。此外,在(最坏的情况)情况下,计算机将在第一个命令期间变得无法 ping 通,我可能会在我的日志文件中获得这两个结果。所以我想知道如何将这两行写成一个 ping 命令?

你可以使用这个:

PING <ip-address> |find "TTL=">nul && ECHO Responsive> <filename> || ECHO Unresponsive> <filename>

因为||如果最后一条命令未成功执行,或根本未执行,则执行,因此如果前一个回显没有触发此回显。有关此外观的更多信息here