【发布时间】:2019-07-03 02:46:19
【问题描述】:
我正在尝试生成有关磁盘/驱动器的 DiskDevices.ini 文件。
这是my batch。
@ECHO OFF
SETLOCAL EnableExtensions EnableDelayedExpansion
SET "InputFile=DiskDevices.ini"
IF EXIST "%InputFile%" (DEL /f /q "%InputFile%")
SET /A "TotalDevices=0"
SET /A "Index=0"
@FOR /F "skip=2 tokens=*" %%G IN ('
"WMIC PATH Win32_DiskDrive GET Index /format:csv 2>NUL"
') DO (
SET /A "TotalDevices=TotalDevices+1"
SET /A "Index=Index+1"
>>"%InputFile%" CALL ECHO [Device_%%Index%%]
@FOR /F Tokens^=* %%G IN ('
"WMIC PATH Win32_DiskDrive GET Caption,Size /value 2>NUL"
') DO (
@FOR /F Tokens^=* %%H IN ("%%G") DO (>>"%InputFile%" CALL ECHO %%H)
)
)
>>"%InputFile%" CALL ECHO [Total Devices]
>>"%InputFile%" CALL ECHO Value=%%TotalDevices%%
PAUSE
结果是循环两次。
[Device_1]
Caption=Samsung EVO
Size=162536803840
Caption=Kingston USB Device
Size=31718510080
[Device_2]
Caption=Samsung EVO
Size=162536803840
Caption=Kingston USB Device
Size=31718510080
[Total Devices]
Value=2
我也需要这个:
[Device_1]
Caption=Samsung EVO
Size=162536803840
[Device_2]
Caption=Kingston USB Device
Size=31718510080
[Total Devices]
Value=2
感谢您的帮助。
【问题讨论】:
标签: batch-file cmd wmi wmic