我的想法是获取局域网内的计算机名,IP,物理地址,硬盘序列号,硬盘ID然后按照下面的格式写入a.txt
计算机名称 资产存放位置 物理地址 硬盘序列号 硬盘ID IP地址
aa123 6F 00-00-0c-07-ac-1e WDC5000AAKX-00U6AA0 566D7276 10.205.99.100
aa454 6F 00-f2-1c-07-ac-1f WDC5000CCKX-00R7AA1 586D3243 10.205.99.152
..........
..........
.........
然后将a.txt写入a.csv- ::1.目前我的方法是
- @echo off
- ::遍历一遍所在IP段
- FOR /L %%i IN (0,1,255) Do ping 10.205.94.%%i -n 1 -w 1
- ::运行"arp -a -"获得局域网内的计算机IP和物理地址
- arp -a ->MACC.txt
-
- ::2然后用获得的IP放如b.txt获得计算机名
- @ECHO Off
- ::获取局域内正在使用的计算机IP,MAC地址和计算机名
- FOR /F %%i IN (b.txt) Do (
- ECHO 计算机名称对应IP地址:%%
- nbtstat -a %%i
- )>>asdc.txt
-
- ::3但是我只会获取本机的“磁盘 ID”
- ::将代码写入123.txt
- (echo select disk 0
- echo detail disk
- )>123.txt
- ::运行"diskpart"命令和123.txt中"diskpart"命令下的语句
- ::将运行结果写入记录.txt,并且删除123.txt
- (cmd.exe /c diskpart /s 123.txt
- )>记录.txt & del 123.txt
-
- ::提取记录.txt中特定字符行的数据写入到a.txt,并且删除 记录.txt
- (type 记录.txt|find "磁盘 ID:"
- )>a.txt & del 记录.txt
复制代码 求大神帮帮忙,因为最近要整理公司上千台不同IP段电脑的数据很是头痛,我虽然写了一个单独版的.bat但是需要在每一台电脑上都运行一次太麻烦了。 |