@echo off&setlocal enabledelayedexpansion
for /f "skip=2 delims= " %%i in ('arp -a ^|findstr /R "[0-9]*.[0-9]*.[0-9]*.[0-9]*"') do (
set ip=%%i
echo=!ip!
)
pause
你先通过for 语句或者其他方法从 arp -a 的结果中取出 ip地址
然后 通过这样的方式调用
ping.bat %ip
然后在ping.bat 通过 %1 来接收上面传进来的IP地址
再执行其他操作就行了
@echo off
for /f "skip=2 tokens=1" %%i in ('arp -a') do start ping %%i
不需开多窗口ping的话,把start去掉即可。
在windows cmd里实现估计可能性不大