
[已解決]收集系統信息的批處理但運行結果不完整求幫助最后由 cocn2002 于 -3-26 19:46在壇子里翻到一個前輩發的關于收集系統信息的批處理,用后發現部分缺少運行結果,懇求幫助完善下,使其可以完整顯示,我使用的操作系統WIN7 64位下面是批處理的內容+運行結果內容:
運行結果:計算機名:PC09021524主機型號: CPU 相關: 內存總量:-1MB硬盤1型號: HDS722580VLAT20 ATA Device 硬盤1容量: 80G硬盤2型號: ST3160815AS ATA Device 硬盤2容量: 160G硬盤3型號: 硬盤3容量:聲卡型號:顯卡型號:Intel(R) G41 Express Chipset網卡型號: MAC 地址: I P 地址: 子網掩碼: 網關: DNS : 下面是DXDIAG生成的信息。nclick="copycode($('code0'));">復制代碼
- @echo off
- color 0a
- title 硬件檢測
- mode con cols=40lines=10
- sc config winmgmt start= auto >nul 2<&1
- net start winmgmt 2>nul
- setlocal ENABLEDELAYEDEXPANSION
- set file=!computername!.txt
- set txt=info.tmp
- if exist !file! del !file!
- cls
- echo.
- echo 正在收集硬件信息中,請稍候......
- echo --------------------------------
- echo┏━━━━━━━━━━━━━━━┓
- echo┃!!!請勿關閉本程序!!! ┃
- echo┃如果程序打擾了您的工作┃
- echo┃請把程序最小化┃
- echo┗━━━━━━━━━━━━━━━┛
- echo --------------------------------
- ::從DXDIAG里獲取主機型號、CPU、內存信息
- dxdiag /t !txt!
- for /f tokens=2 delims=: %%i in ('type !txt! ^| findstr /i /c:System Model') do set XH=%%i
- for /f tokens=2 delims=: %%i in ('type !txt! ^| findstr /i /c:Processor:') do set CPU=%%i
- for /f tokens=2 delims=: %%i in ('type !txt! ^| findstr /c: Memory:') do set NC=%%i
- ::內存容量取整
- set /a mmem=!NC:~0,-6!
- if !mmem! LEQ 800 set mem=!mmem!MB
- if !mmem! LEQ 1250 (
- if !mmem! GEQ 850 (
- set mem=1G
- )
- )
- if !mmem! LEQ 1750 (
- if !mmem! GEQ 1250 (
- set mem=1.5G
- )
- )
- if !mmem! LEQ 2250 (
- if !mmem! GEQ 1750 (
- set mem=2G
- )
- )
- if !mmem! GEQ 3250 set mem=4G
- ::用WMIC命令獲取硬盤型號與硬盤容量
- for /f skip=1 tokens=* %%i in ('wmic DISKDRIVE get caption') do (
- if not %%i== (set/a n+=1&set HDD!n!=%%i)
- )
- for /f skip=1 delims= %%i in ('wmic DISKDRIVE get size') do call set 硬盤大小=!!硬盤大小!! %%i
- for /f tokens=1,2,3,4 %%i in (!硬盤大小!) do call set Size1=%%i&set Size2=%%j&set Size3=%%k&set Size4=%%l
- ::硬盤容量取整
- set /a Size1=!Size1:~0,-9!
- set /a Size2=!Size2:~0,-9!
- set /a Size3=!Size3:~0,-9!
- set /a Size4=!Size4:~0,-9!
- if !Size1:~-1! LEQ 9 (
- if !Size1:~-1! GEQ 1 (
- set /a size1=!size1!+1
- )
- )
- if !Size2:~-1! LEQ 9 (
- if !Size2:~-1! GEQ 1 (
- set /a size2=!size2!+1
- )
- )
- if !Size3:~-1! LEQ 9 (
- if !Size3:~-1! GEQ 1 (
- set /a size3=!size3!+1
- )
- )
- if !Size4:~-1! LEQ 9 (
- if !Size4:~-1! GEQ 1 (
- set /a size4=!size4!+1
- )
- )
- if !Size1! GEQ 40 set /a size1=!size1!-!Size1:~-1!
- if !Size2! GEQ 40 set /a size2=!size2!-!Size2:~-1!
- if !Size3! GEQ 40 set /a size3=!size3!-!Size3:~-1!
- if !Size4! GEQ 40 set /a size4=!size4!-!Size4:~-1!
- if !Size2! LEQ 39 set /a size2=!size2!-1
- if !Size3! LEQ 39 set /a size3=!size3!-1
- if !Size4! LEQ 39 set /a size4=!size4!-1
- if !size1! GEQ 0 (set size1=!size1!G) else set size1=
- if !size2! GEQ 0 (set size2=!size2!G) else set size2=
- if !size3! GEQ 0 (set size3=!size3!G) else set size3=
- if !size4! GEQ 0 (set size4=!size4!G) else set size4=
- ::獲取IP等信息及WMIC取顯卡、聲卡型號
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:IP Address') do set IP=%%i
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:Subnet Mask') do set Subnet=%%i
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:Physical Address') do set mac=%%i
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:Default Gateway') do set gateway=%%i
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:DNS Servers') do set dns=%%i
- for /f tokens=2 delims=: %%i in ('ipconfig /all ^| findstr /i /c:Description') do set netcard=%%i
- for /f skip=1 delims= %%i in ('wmic SOUNDDEV get ProductName') do set SOUND=%%i
- for /f tokens=1,2 delims== %%a in ('wmic path Win32_VideoController get AdapterRAM^,Name /value^|findstr AdapterRAM Name') do set Video=%%b
- ::輸出到文件并清除臨時文件
- echo.>>!file!
- echo 計算機名:!computername!>>!file!
- echo 主機型號: !XH!>>!file!
- echo CPU 相關: !CPU!>>!file!
- echo 內存總量:!mem!>>!file!
- if not !HDD1!== echo 硬盤1型號: !HDD1:~0,-2!>>!file!
- if not !HDD1!== echo 硬盤1容量: !size1!>>!file!
- if not !HDD2!== echo 硬盤2型號: !HDD2:~0,-2!>>!file!
- if not !HDD2!== echo 硬盤2容量: !size2!>>!file!
- if not !HDD3!== echo 硬盤3型號: !HDD3:~0,-2!>>!file!
- if not !HDD3!== echo 硬盤3容量: !size3!>>!file!
- if not !HDD4!== echo 硬盤4型號: !HDD4:~0,-2!>>!file!
- if not !HDD4!== echo 硬盤4容量: !size4!>>!file!
- echo 聲卡型號:!SOUND!>>!file!
- echo 顯卡型號:!Video!>>!file!
- echo 網卡型號: !netcard!>>!file!
- echo MAC 地址: !mac!>>!file!
- echo I P 地址: !IP!>>!file!
- echo 子網掩碼: !Subnet!>>!file!
- echo 網關: !gateway!>>!file!
- echo DNS : !dns!>>!file!
- echo.>>!file!
- echo.>>!file!
- echo 下面是DXDIAG生成的信息。>>!file!
- echo.>>!file!
- type !txt!>>!file!
- del /f !txt!
- exit

