Guest User

Why double results when call echo to output to file?

a guest
Jul 2nd, 2019
414
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.66 KB | None | 0 0
  1. @ECHO OFF
  2. SETLOCAL EnableExtensions EnableDelayedExpansion
  3. SET "InputFile=DiskDevices.ini"
  4. IF EXIST "%InputFile%" (DEL /f /q "%InputFile%")
  5. SET /A "TotalDevices=0"
  6. SET /A "Index=0"
  7. @FOR /F "skip=2 tokens=*" %%G IN ('
  8. "WMIC PATH Win32_DiskDrive GET Index /format:csv 2>NUL"
  9. ') DO (
  10.     SET /A "TotalDevices=TotalDevices+1"
  11.     SET /A "Index=Index+1"
  12.     >>"%InputFile%" CALL ECHO [Device_%%Index%%]
  13.     @FOR /F Tokens^=* %%G IN ('
  14.     "WMIC PATH Win32_DiskDrive GET Caption,Size /value 2>NUL"
  15.     ') DO (
  16.         @FOR /F Tokens^=* %%H IN ("%%G") DO (>>"%InputFile%" CALL ECHO %%H)
  17.         )
  18. )
  19. >>"%InputFile%" CALL ECHO [Total Devices]
  20. >>"%InputFile%" CALL ECHO Value=%%TotalDevices%%
  21. PAUSE
Advertisement
Add Comment
Please, Sign In to add comment