需求:获取本机中的显卡相关信息,如多个显卡则取默认取第一行即可,但是此处分辨率在第二行,因此没有采用.../value格式化,那么就带来个问题,用【delims= 】空格拆分时可能会导致意外的结果【如:显卡名称本身含有空格】
在不用.../value格式情况下如何正确提取5列的值【显卡内存、显卡名称、显卡版本、水平分辨率、垂直分辨率】
本机的查询返回结果列表(数据可能没对齐):- D:\work_related\Tools\Batch>wmic path Win32_VideoController get Name,AdapterRAM,DriverVersion,CurrentHorizontalResolution,CurrentVerticalResolution
- AdapterRAM CurrentHorizontalResolution CurrentVerticalResolution DriverVersion Name
- 2147483648 27.21.14.5709 NVIDIA GeForce 940MX
- 1073741824 1920 1080 27.20.100.8853 Intel(R) HD Graphics 630
复制代码 最终得到的值:
set Name=显卡名称
set AdapterRAM=显卡内存
set DriverVersion=显卡版本
set CurrentHorizontalResolution=水平分辨率
set CurrentVerticalResolution=垂直分辨率
示例代码:- for /f "skip=1 tokens=1-5 delims= " %%a in ('wmic path Win32_VideoController get Name^,AdapterRAM^,DriverVersion^,CurrentHorizontalResolution^,CurrentVerticalResolution') do (
-
-
- )
复制代码
|