Ping网络中的所有IP并将输出存储在文本文件中

问题描述 投票:0回答:1

我几天前发布了这个,但我仍然有一些问题。请尽可能帮助。这是我的代码

@echo off
rem This script pings all IPAdresses on an Xfinity Router. 
::v1.2 - BTE - 01Mar19
::
for /L %%i in (1,1,254) DO ping -n 1 10.0.0.%%i | findstr "ms" && (echo 10.0.0.%%i)>>"pingable_ips.txt"

以上是我试图创建的批处理文件,用于ping我网络上的所有IP地址,然后将所有可ping的IP写入文本文件。经过其他人的一些故障排除后,我得到它至少ping网络上的所有IP。我仍然无法获取批处理文件以使用可ping的IP创建文本文件。

这个批处理文件从10.0.0.110.0.0.254一直运行,但它会在之后停止。

编辑:谢谢,我得到了它的工作!

batch-file
1个回答
0
投票

虽然我不知道您的代码出了什么问题,但我会建议以下不会产生任何错误/错误行为,除非这是您的错:

@echo off
rem This script pings all IPAdresses on an Xfinity Router. 
rem v1.2 - BTE - 01Mar19

for /L %%A IN (1 1 254) do (
    (ping -n 1 10.0.0.%%A | findstr "ms") && (
        echo 10.0.0.%%A>>"pingable_ips.txt"
    ) || (
        echo Failed to find string "ms" when pinging 10.0.0.%%A!
    )
)

或者在一行中:

@echo off
rem This script pings all IPAdresses on an Xfinity Router. 
rem v1.2 - BTE - 01Mar19

for /L %%A IN (1 1 254) do (ping -n 1 10.0.0.%%A | findstr "ms") && (echo 10.0.0.%%A>>"pingable_ips.txt") || (echo Failed to find string "ms" when pinging 10.0.0.%%A!)

实际上,我的代码检查命令ping -n 1 10.0.0.%%A | findstr "ms"是否将errorlevel EQUal返回到0。如果是,则运行命令echo 10.0.0.%%A>>"pingable_ips.txt"。如果不是,它将运行echo Failed to find string "ms" when pinging 10.0.0.%%A!

© www.soinside.com 2019 - 2024. All rights reserved.