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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ping网络中的所有IP并将输出存储在文本文件中相关的知识,希望对你有一定的参考价值。

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

@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一直运行,但它会在之后停止。

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

答案

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

@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!

以上是关于Ping网络中的所有IP并将输出存储在文本文件中的主要内容,如果未能解决你的问题,请参考以下文章

如何快速ping网络中的所有IP地址? [重复]

linux长ping带时间输出到日志

ping IP有什么用

bash 脚本在变量中使用剪切命令并将结果存储在另一个变量中

如何将ping的结果以txt文本输出并保存?

如何在linux 获得局域网内所有IP地址,并重定向至文本文件