批处理 从文件中读取内容ping多个ip

2025-04-15 03:17:29
推荐回答(4个)
回答1:

写得太复杂了。。

@echo off
echo %date%>>pinRecord.txt
echo.
for /f %%i in (IP.txt) do (
ping -n 1 %%i >nul && echo %%i ping入成功 || echo %%i ping入失败 && echo %%i>>pinRecord.txt
)
echo.
echo.检查完成.任意键退出并查看pinRecord.txt
pause>nul
start pinrecord.txt

回答2:

我小改了下,看看是不是一样能实现你需要的目的??

@echo off
echo %date%>>pinRecord.txt
echo.
for /f %%i in (IP.txt) do (
@rem show ip
echo %%i
net use \\%%i\ipc$ >nul 2>nul
@rem show ERRORLEVEL
echo %ERRORLEVEL%
if %ERRORLEVEL%==0 echo ping入成功
if %ERRORLEVEL%==1 echo %%i>>pinRecord.txt
echo.
)
pause
cls

回答3:

给你点提示:

这样改才行~
set a=1
for /l %%i in (1,1,10) do (
for /f "tokens=%a%" %%j in (IP.txt) do (
echo %%j
ping %%j
echo %ERRORLEVEL%
if %ERRORLEVEL%==0 echo ping入成功
if %ERRORLEVEL%==1 echo %%j>>pinRecord.txt
echo.
)
set/a a=a+1
)

回答4:

这个还真没用过,不过感觉是不管PING不PING得通,命令都是正常执行了吧,所以返回正常值0