• Thank you Raymond..Your code helped me build mine.Hope this helps:

    SET NOCOUNT ON

    IF OBJECT_ID(N'tempdb..#drive_space') IS NOT NULL DROP TABLE #drive_space

    CREATE TABLE #drive_space

    (name varchar(5)

    , available_mb int)

    INSERT #drive_space(name,available_mb)

    EXEC master..xp_fixeddrives

    DECLARE

    @drive VARCHAR(5)

    , @cmd VARCHAR(1000)

    , @pos SMALLINT

    IF OBJECT_ID(N'tempdb..#cmd_space') IS NOT NULL DROP TABLE #cmd_space

    CREATE TABLE #cmd_space

    (total_b VARCHAR(1000)

    , drive VARCHAR(5))

    DECLARE drive_name CURSOR FOR

    SELECT name FROM #drive_space

    OPEN drive_name

    FETCH NEXT FROM drive_name INTO @drive

    WHILE @@FETCH_STATUS = 0

    BEGIN

    SET @cmd='master..xp_cmdshell ' + ''''+ 'fsutil volume diskfree ' + @drive + ':| find '+ '"Total # of bytes"'+''''

    INSERT #cmd_space(total_b) EXEC (@cmd)

    UPDATE #cmd_space SET drive=@drive WHERE drive IS NULL

    FETCH NEXT FROM drive_name INTO @drive

    END

    CLOSE drive_name

    DEALLOCATE drive_name

    DELETE FROM #cmd_space WHERE total_b IS NULL

    SELECT @pos=charindex(':',total_b) FROM #cmd_space

    SELECT b.drive as DRIVE

    , CONVERT(BIGINT,(RIGHT(b.total_b,(LEN(b.total_b)-@pos))))/1073741824 AS TOTAL_DRIVE_SPACE_GB

    , a.available_mb/1024 AS AVAILABLE_SPACE_GB

    FROM #drive_space a WITH (NOLOCK)

    INNER JOIN #cmd_space b WITH (NOLOCK)

    ON a.name=b.drive

    DROP TABLE #cmd_space

    DROP TABLE #drive_space