通常,通过在浏览器中输入IP地址访问路由器设置时,我可以访问连接到网络的所有客户端的列表。有没有办法以某种方式检索此信息并将其导出到.txt文件或Excel?我尝试了一些CMD代码,但没有成功。
非常感谢。
答案 0 :(得分:1)
有arp命令。它列出了计算机已知的地址。这基本上意味着“自上次重置(显式重置或重新启动)以来,该地址已与该地址进行了一些通信”。但是它不会告诉您该地址当前是否可访问。因此,要获取可访问的地址,您必须删除arp的缓存,强制与每个地址通信(只要ping就足够了),然后显示缓存:
@echo off
arp -d
(for /l %%i in (1,1,255) DO start /min ping 192.168.1.%%i -n 1) & timeout 10 >nul
arp -a | find "dynamic"
timeout
给了完成ping
的时间,让arp
来建立其缓存数据。
请确保根据您的需要调整基址(192.168.1.
)。如果使用非英语版本的Windows,则还必须修改字符串dynamic
。
start /min
通过并行运行ping
使其非常有效。
注意:某些计算机/设备可能无法响应ping
,因此它们将在列表中丢失。
奖金行:
for /f %%a in ('arp -a^|find "dynam"') do for /f "tokens=2,3 delims=[] " %%b in ('ping -a -n 1 %%a^|find "["') do echo %%c %%b
(同样,这是英语版本。将标记用于其他语言;对于德语Windows,则为tokens=5,6
)