Using PsInfo.exe, I have scripted DriveInfo.bat to return the computer name, drive letter, drive type, file system, disk label, size, free space, and free space percentage of a local or remote computers drives, using a CSV format.

The syntax for using DriveInfo.bat is:

DriveInfo \[\\computername\]

Where \\computername is the optional remote computer name.

DriveInfo.bat contains:

@echo off
setlocal ENABLEDELAYEDEXPANSION
set comp=%1
if \{%1\}==\{\} set comp=\\%computername%
for /f "Skip=3 Tokens=*" %%a in ('psinfo Volume -d %comp%') do (
 set l=%%a
 set drive=!l:~0,1!
 set type=!l:~3,10!
 set type=!type: =!
 set fmt=!l:~14,10!
 set fmt=!fmt: =!
 set fmt=!fmt:,=;!
 if "!l:~14,1!" EQU " " set fmt=
 set lbl=!l:~25,20!
 set lbl=!lbl:  =!
 set lbl=!lbl: "="!
 if "!l:~25,1!" EQU " " set lbl=
 set size=!l:~46,10!
 set size=!size: =!
 set free=!l:~57,10!
 set free=!free: =!
 set freep=!l:~68,7!
 set freep=!freep: =!
 @echo "%comp:~2%","!drive!","!type!","!fmt!","!lbl!","!size!","!free!","!freep!"
)
endlocal