
[已解決]批處理怎么獲取局域網(wǎng)內(nèi)的計(jì)算機(jī)的名稱IP物理地址磁盤ID等數(shù)據(jù)我的想法是獲取局域網(wǎng)內(nèi)的計(jì)算機(jī)名,IP,物理地址,硬盤序列號(hào),硬盤ID然后按照下面的格式寫入a.txt計(jì)算機(jī)名稱 資產(chǎn)存放位置物理地址硬盤序列號(hào) 硬盤IDIP地址aa123 6F00-00-0c-07-ac-1eWDC5000AAKX-00U6AA0 566D7276 10.205.99.100aa454 6F00-f2-1c-07-ac-1fWDC5000CCKX-00R7AA1 586D3243 10.205.99.152.............................然后將a.txt寫入a.csv
求大神幫幫忙,因?yàn)樽罱砉旧锨_(tái)不同IP段電腦的數(shù)據(jù)很是頭痛,我雖然寫了一個(gè)單獨(dú)版的.bat但是需要在每一臺(tái)電腦上都運(yùn)行一次太麻煩了。nclick="copycode($('code0'));">復(fù)制代碼
- ::1.目前我的方法是
- @echo off
- ::遍歷一遍所在IP段
- FOR /L %%i IN (0,1,255) Do ping 10.205.94.%%i -n 1 -w 1
- ::運(yùn)行arp -a -獲得局域網(wǎng)內(nèi)的計(jì)算機(jī)IP和物理地址
- arp -a ->MACC.txt
- ::2然后用獲得的IP放如b.txt獲得計(jì)算機(jī)名
- @ECHO Off
- ::獲取局域內(nèi)正在使用的計(jì)算機(jī)IP,MAC地址和計(jì)算機(jī)名
- FOR /F %%i IN (b.txt) Do (
- ECHO 計(jì)算機(jī)名稱對(duì)應(yīng)IP地址:%%
- nbtstat -a %%i
- )>>asdc.txt
- ::3但是我只會(huì)獲取本機(jī)的“磁盤 ID”
- ::將代碼寫入123.txt
- (echo select disk 0
- echo detail disk
- )>123.txt
- ::運(yùn)行diskpart命令和123.txt中diskpart命令下的語(yǔ)句
- ::將運(yùn)行結(jié)果寫入記錄.txt,并且刪除123.txt
- (cmd.exe /c diskpart /s 123.txt
- )>記錄.txt & del 123.txt
- ::提取記錄.txt中特定字符行的數(shù)據(jù)寫入到a.txt,并且刪除 記錄.txt
- (type 記錄.txt|find 磁盤 ID:
- )>a.txt& del 記錄.txt

