Board logo

标题: 分享硬件检测批处理 [打印本页]

作者: AK47    时间: 2008-9-16 13:42     标题: 分享硬件检测批处理

很好用!
  1. @echo off
  2. color 0a
  3. title 硬件检测
  4. mode con cols=90
  5. sc config winmgmt start= auto >nul 2<&1
  6. net start winmgmt 2>1nul
  7. setlocal ENABLEDELAYEDEXPANSION
  8. echo 主版:
  9. for /f "tokens=1,* delims==" %%a in ('wmic BASEBOARD get Manufacturer^,Product^,Version^,SerialNumber /value') do (
  10. set /a tee+=1
  11. if "!tee!" == "3" echo 制造商 = %%b
  12. if "!tee!" == "4" echo 型 号 = %%b
  13. if "!tee!" == "5" echo 序列号 = %%b
  14. if "!tee!" == "6" echo 版 本 = %%b
  15. )
  16. set tee=0
  17. echo BIOS:
  18. for /f "tokens=1,* delims==" %%a in ('wmic bios get
  19. CurrentLanguage^,Manufacturer^,SMBIOSBIOSVersion^,SMBIOSMajorVersion^,SMBIOSMinorVersion^,ReleaseDate /value') do (
  20. set /a tee+=1
  21. if "!tee!" == "3" echo 当前语言 = %%b
  22. if "!tee!" == "4" echo 制造商 = %%b
  23. if "!tee!" == "5" echo 发行日期 = %%b
  24. if "!tee!" == "6" echo 版 本 = %%b
  25. if "!tee!" == "7" echo SMBIOSMajorVersion = %%b
  26. if "!tee!" == "8" echo SMBIOSMinorVersion = %%b
  27. )
  28. set tee=0
  29. echo.
  30. echo CPU:
  31. for /f "tokens=1,* delims==" %%a in ('wmic cpu get name^,ExtClock^,CpuStatus^,Description /value') do (
  32. set /a tee+=1
  33. if "!tee!" == "3" echo CPU个数 = %%b
  34. if "!tee!" == "4" echo 处理器版本 = %%b
  35. if "!tee!" == "5" echo 外 频 = %%b
  36. if "!tee!" == "6" echo 名称及主频率 = %%b
  37. )
  38. set tee=0
  39. echo.
  40. echo 显示器:
  41. for /f "tokens=1,* delims==" %%a in ('wmic DESKTOPMONITOR get name^,ScreenWidth^,ScreenHeight^,PNPDeviceID /value') do (
  42. set /a tee+=1
  43. if "!tee!" == "3" echo 类 型 = %%b
  44. if "!tee!" == "4" echo 其他信息 = %%b
  45. if "!tee!" == "5" echo 屏幕高 = %%b
  46. if "!tee!" == "6" echo 屏幕宽 = %%b
  47. )
  48. set tee=0
  49. echo.
  50. echo 硬 盘:
  51. for /f "tokens=1,* delims==" %%a in ('wmic DISKDRIVE get model^,interfacetype^,size^,totalsectors^,partitions /value') do (
  52. set /a tee+=1
  53. if "!tee!" == "3" echo 接口类型 = %%b
  54. if "!tee!" == "4" echo 硬盘型号 = %%b
  55. if "!tee!" == "5" echo 分区数 = %%b
  56. if "!tee!" == "6" echo 容 量 = %%b
  57. if "!tee!" == "7" echo 总扇区 = %%b
  58. )
  59. echo 分区信息:
  60. wmic LOGICALDISK where mediatype='12' get description,deviceid,filesystem,size,freespace
  61. set tee=0
  62. echo.
  63. echo 网 卡:
  64. for /f "tokens=1,* delims==" %%a in ('wmic NICCONFIG where "index='1'" get ipaddress^,macaddress^,description /value') do (
  65. set /a tee+=1
  66. if "!tee!" == "3" echo 网卡类型 = %%b
  67. if "!tee!" == "4" echo 网卡IP = %%b
  68. if "!tee!" == "5" echo 网卡MAC = %%b
  69. )
  70. set tee=0
  71. echo.
  72. echo 打印机:
  73. for /f "tokens=1,* delims==" %%a in ('wmic PRINTER get caption /value') do (
  74. set /a tee+=1
  75. if "!tee!" == "3" echo 打印机名字 = %%b
  76. )
  77. set tee=0
  78. echo.
  79. echo 声 卡:
  80. for /f "tokens=1,* delims==" %%a in ('wmic SOUNDDEV get name^,deviceid /value') do (
  81. set /a tee+=1
  82. if "!tee!" == "3" echo 其他信息 = %%b
  83. if "!tee!" == "4" echo 型 号 = %%b
  84. )
  85. set tee=0
  86. echo.
  87. echo 内 存:
  88. for /f "tokens=1,* delims==" %%a in ('systeminfo^|find "内存"') do (
  89. echo %%a 4534 %%b
  90. )
  91. echo.
  92. echo 显 卡:
  93. del /f "%TEMP%\temp.txt" 2>nul
  94. dxdiag /t %TEMP%\temp.txt
  95. :显卡
  96. rem 这里需要30秒左右!
  97. if EXIST "%TEMP%\temp.txt" (
  98. for /f "tokens=1,2,* delims=:" %%a in ('findstr /c:" Card name:" /c:"Display Memory:" /c:"Current Mode:" "%TEMP%\temp.txt"') do (
  99. set /a tee+=1
  100. if !tee! == 1 echo 显卡型号: %%b
  101. if !tee! == 2 echo 显存大小: %%b
  102. if !tee! == 3 echo 当前设置: %%b
  103. ) ) else (
  104. ping /n 2 127.1>nul
  105. goto 显卡
  106. )
  107. set /p var=需要额外信息吗(y/n):
  108. if /i %var% == y notepad "%TEMP%\temp.txt"
  109. del /f "%TEMP%\temp.txt" 2>nul
  110. pause
复制代码

作者: ynkm0871    时间: 2009-6-19 14:10

谢谢楼主的辛勤劳动,支持!
作者: athinko    时间: 2009-10-11 12:05

谢谢楼主
的分享。
作者: athinko    时间: 2009-10-21 22:18




支持了
作者: wsmrb    时间: 2009-11-9 21:58

很好的帖子。学习了啊
作者: wjguowei    时间: 2009-11-17 22:45     标题: 高人呀!

太感谢了。太有用了,!!谢谢
作者: 5566ljlj    时间: 2009-11-25 22:29

还是WMIC命令强大啊!
作者: wanfcl83    时间: 2009-12-7 00:33

顶个楼主 (*^__^*) 嘻嘻……
作者: yangwenzheng    时间: 2010-1-29 16:35

问楼主,我把驱动程序卸载了,就不能识别了1!!?!?!?这是为什么?
作者: hfg1977    时间: 2010-4-9 21:53

把硬盘那里改了一下,以适用多硬盘qingkuang"
  1. echo.
  2. echo 硬 盘:
  3. set "model=硬盘型号 ="&set "interfacetype=接口类型 ="&set "partitions=分区数   ="&set "size=容   量  ="
  4. for /f "tokens=1,* delims==" %%a in ('wmic DISKDRIVE get model^,interfacetype^,size^,partitions /value^|more +2') do echo. !%%a!%%b
复制代码

作者: cyxly    时间: 2010-6-12 17:50

楼主辛苦了,那么多代码。顶!好贴,谢谢分享。
作者: junwalo    时间: 2010-7-7 10:54

顶了,学习中,谢谢各位。。。。。
作者: 猪猪你个羊羊    时间: 2011-8-3 00:59

找了很久终于找到了!!谢谢楼主
同时也谢谢bat-Batcher兄弟提供的信息
作者: hnfeng    时间: 2012-4-27 13:54

强大的很
谢谢分享,收藏了
作者: laolong    时间: 2013-11-19 08:47

太有用了,!!谢谢
作者: re168    时间: 2016-7-2 18:08

矮油、、非常感谢楼主的分享!支持...
作者: zisss    时间: 2017-1-23 11:43

多謝樓主  可用於子批次檔調用  真的很方便
作者: oichen    时间: 2017-1-28 23:46

请问winmgnt 2代表什么?
是不是一共分为1~9?
作者: cc5511    时间: 2020-8-29 02:54

把硬盘那里改了一下,以适用多硬盘qingkuang"
hfg1977 发表于 2010-4-9 21:53



    你这代码写得真好 不啰嗦 效率高




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2