Guest User

Untitled

a guest
Jan 18th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.52 KB | None | 0 0
  1. @ECHO OFF
  2. SETLOCAL ENABLEEXTENSIONS
  3. SETLOCAL ENABLEDELAYEDEXPANSION
  4. CLS
  5. FOR /F "tokens=1*" %%A IN ('fsutil fsinfo drives') DO SET "Drives=%%B"
  6. FOR %%A IN (%Drives%) DO fsutil fsinfo statistics %%A |FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." >nul || CALL:GetDriveInfo %%A
  7. EXIT /B
  8.  
  9. :GetDriveInfo
  10. SET "CurrentDrive=%~1"
  11. SET "CurrentDrive=%CurrentDrive:=%
  12. FOR /F "tokens=7 delims= " %%A IN ('fsutil volume diskfree %~1 ^|FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%%A"
  13. FOR /F "tokens=6 delims= " %%A IN ('fsutil volume diskfree %~1 ^|FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%%A"
  14. FOR /F %%A IN ('powershell %CurrentDrive-TotalSpace% - %CurrentDrive-FreeSpace%') DO Set "CurrentDrive-UsedSpace=%%A"
  15.  
  16. FOR /F "tokens=1-2 delims=." %%A IN ('powershell %CurrentDrive-UsedSpace% / %CurrentDrive-TotalSpace% * 100') DO (
  17. SET "CurrentDrive-UsedSpace-Percent1=%%A"
  18. SET "CurrentDrive-UsedSpace-Percent2=%%B"
  19. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  20. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  21. )
  22.  
  23. FOR /F "tokens=1-2 delims=." %%A IN ('powershell %CurrentDrive-FreeSpace% / %CurrentDrive-TotalSpace% * 100') DO (
  24. SET "CurrentDrive-FreeSpace-Percent1=%%A"
  25. SET "CurrentDrive-FreeSpace-Percent2=%%B"
  26. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  27. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  28. )
  29.  
  30. ECHO Drive Information For %CurrentDrive%
  31. ECHO/ Used Space: %CurrentDrive-UsedSpace% (%CurrentDrive-UsedSpace-Percent%%%)
  32. ECHO/ Free Space: %CurrentDrive-FreeSpace% (%CurrentDrive-FreeSpace-Percent%%%)
  33. ECHO/ Total Space: %CurrentDrive-TotalSpace%
  34. ECHO/
  35. EXIT /B
  36.  
  37. :GetDriveInfo-Convert
  38. FOR /F %%A IN ('powershell %~2 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%%A"
  39. FOR /F "Tokens=1-2 delims=." %%A IN ("%CurrentDrive_Temp%") DO SET "CurrentDrive_Temp1=%%A" & SET "CurrentDrive_Temp2=%%B"
  40. SET "CurrentDrive_Temp3=%CurrentDrive_Temp2:~0,2%"
  41.  
  42. :: Rounds Up to get a more accurate number. Used to counter the lost bytes.
  43. IF "%CurrentDrive_Temp2:~2,1%" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  44. IF "%CurrentDrive_Temp3%"=="100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  45. SET "%~1=%CurrentDrive_Temp1%.%CurrentDrive_Temp3%"
  46. EXIT /B
  47.  
  48. Drive Information For C:
  49. Used Space: 103.21 (86.5%)
  50. Free Space: 16.04 (13.4%)
  51. Total Space: 119.25
  52.  
  53. Drive Information For D:
  54. Used Space: 481.37 (57.8%)
  55. Free Space: 350.14 (42.1%)
  56. Total Space: 831.51
  57.  
  58. Drive Information For E:
  59. Used Space: 530.02 (99.7%)
  60. Free Space: 1.49 (0.2%)
  61. Total Space: 531.51
  62.  
  63. Drive Information For F:
  64. Used Space: 86.4 (43.2%)
  65. Free Space: 113.60 (56.8%)
  66. Total Space: 200.00
  67.  
  68. Drive Information For G:
  69. Used Space: 0.129999999999995 (0.0%)
  70. Free Space: 199.87 (99.9%)
  71. Total Space: 200.00
  72.  
  73. Drive Information For I:
  74. Used Space: 86.83 (9.3%)
  75. Free Space: 844.68 (90.6%)
  76. Total Space: 931.51
  77.  
  78. Drive Information For J:
  79. Used Space: 699.09 (75.0%)
  80. Free Space: 232.39 (24.9%)
  81. Total Space: 931.48
  82.  
  83. Drive Information For Z:
  84. Used Space: 11.06 (22.1%)
  85. Free Space: 38.94 (77.8%)
  86. Total Space: 50.00
  87.  
  88. D:Desktop>SETLOCAL ENABLEEXTENSIONS
  89.  
  90. D:Desktop>SETLOCAL ENABLEDELAYEDEXPANSION
  91.  
  92. D:Desktop>CLS
  93.  
  94. D:Desktop>FOR /F "tokens=1*" %A IN ('fsutil fsinfo drives') DO SET "Drives=%B"
  95.  
  96. D:Desktop>SET "Drives=C: D: E: F: G: H: I: J: K: L: X: Y: Z: "
  97.  
  98. D:Desktop>FOR %A IN (C: D: E: F: G: H: I: J: K: L: X: Y: Z:) DO fsutil fsinfo statistics %A | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo %A
  99.  
  100. D:Desktop>fsutil fsinfo statistics D: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo D:
  101.  
  102. D:Desktop>SET "CurrentDrive=D:"
  103.  
  104. D:Desktop>SET "CurrentDrive=D:
  105.  
  106. D:Desktop>FOR /F "tokens=7 delims= " %A IN ('fsutil volume diskfree D: |FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%A"
  107.  
  108. D:Desktop>Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "375962980352"
  109.  
  110. D:Desktop>FOR /F %A IN ('powershell 375962980352 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  111.  
  112. D:Desktop>SET "CurrentDrive_Temp=350.142810821533"
  113.  
  114. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("350.142810821533") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  115.  
  116. D:Desktop>SET "CurrentDrive_Temp1=350" & SET "CurrentDrive_Temp2=142810821533"
  117.  
  118. D:Desktop>SET "CurrentDrive_Temp3=14"
  119.  
  120. D:Desktop>IF "2" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  121.  
  122. D:Desktop>IF "14" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  123.  
  124. D:Desktop>SET "CurrentDrive-FreeSpace=350.14"
  125.  
  126. D:Desktop>EXIT /B
  127.  
  128. D:Desktop>FOR /F "tokens=6 delims= " %A IN ('fsutil volume diskfree D: |FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%A"
  129.  
  130. D:Desktop>CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "892827856896"
  131.  
  132. D:Desktop>FOR /F %A IN ('powershell 892827856896 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  133.  
  134. D:Desktop>SET "CurrentDrive_Temp=831.510738372803"
  135.  
  136. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("831.510738372803") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  137.  
  138. D:Desktop>SET "CurrentDrive_Temp1=831" & SET "CurrentDrive_Temp2=510738372803"
  139.  
  140. D:Desktop>SET "CurrentDrive_Temp3=51"
  141.  
  142. D:Desktop>IF "0" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  143.  
  144. D:Desktop>IF "51" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  145.  
  146. D:Desktop>SET "CurrentDrive-TotalSpace=831.51"
  147.  
  148. D:Desktop>EXIT /B
  149.  
  150. D:Desktop>FOR /F %A IN ('powershell 831.51 - 350.14') DO Set "CurrentDrive-UsedSpace=%A"
  151.  
  152. D:Desktop>Set "CurrentDrive-UsedSpace=481.37"
  153.  
  154. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 481.37 / 831.51 * 100') DO (
  155. SET "CurrentDrive-UsedSpace-Percent1=%A"
  156. SET "CurrentDrive-UsedSpace-Percent2=%B"
  157. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  158. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  159. )
  160.  
  161. D:Desktop>(
  162. SET "CurrentDrive-UsedSpace-Percent1=57"
  163. SET "CurrentDrive-UsedSpace-Percent2=8910656516458"
  164. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  165. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  166. )
  167.  
  168. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 350.14 / 831.51 * 100') DO (
  169. SET "CurrentDrive-FreeSpace-Percent1=%A"
  170. SET "CurrentDrive-FreeSpace-Percent2=%B"
  171. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  172. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  173. )
  174.  
  175. D:Desktop>(
  176. SET "CurrentDrive-FreeSpace-Percent1=42"
  177. SET "CurrentDrive-FreeSpace-Percent2=1089343483542"
  178. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  179. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  180. )
  181.  
  182. D:Desktop>ECHO Drive Information For D:
  183. Drive Information For D:
  184.  
  185. D:Desktop>ECHO/ Used Space: 481.37 (57.8%)
  186. Used Space: 481.37 (57.8%)
  187.  
  188. D:Desktop>ECHO/ Free Space: 350.14 (42.1%)
  189. Free Space: 350.14 (42.1%)
  190.  
  191. D:Desktop>ECHO/ Total Space: 831.51
  192. Total Space: 831.51
  193.  
  194. D:Desktop>ECHO/
  195.  
  196.  
  197. D:Desktop>EXIT /B
  198.  
  199. D:Desktop>fsutil fsinfo statistics E: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo E:
  200.  
  201. D:Desktop>SET "CurrentDrive=E:"
  202.  
  203. D:Desktop>SET "CurrentDrive=E:
  204.  
  205. D:Desktop>FOR /F "tokens=7 delims= " %A IN ('fsutil volume diskfree E: |FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%A"
  206.  
  207. D:Desktop>Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "1599143936"
  208.  
  209. D:Desktop>FOR /F %A IN ('powershell 1599143936 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  210.  
  211. D:Desktop>SET "CurrentDrive_Temp=1.48931884765625"
  212.  
  213. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("1.48931884765625") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  214.  
  215. D:Desktop>SET "CurrentDrive_Temp1=1" & SET "CurrentDrive_Temp2=48931884765625"
  216.  
  217. D:Desktop>SET "CurrentDrive_Temp3=48"
  218.  
  219. D:Desktop>IF "9" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  220.  
  221. D:Desktop>IF "49" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  222.  
  223. D:Desktop>SET "CurrentDrive-FreeSpace=1.49"
  224.  
  225. D:Desktop>EXIT /B
  226.  
  227. D:Desktop>FOR /F "tokens=6 delims= " %A IN ('fsutil volume diskfree E: |FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%A"
  228.  
  229. D:Desktop>CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "570704261120"
  230.  
  231. D:Desktop>FOR /F %A IN ('powershell 570704261120 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  232.  
  233. D:Desktop>SET "CurrentDrive_Temp=531.509761810303"
  234.  
  235. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("531.509761810303") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  236.  
  237. D:Desktop>SET "CurrentDrive_Temp1=531" & SET "CurrentDrive_Temp2=509761810303"
  238.  
  239. D:Desktop>SET "CurrentDrive_Temp3=50"
  240.  
  241. D:Desktop>IF "9" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  242.  
  243. D:Desktop>IF "51" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  244.  
  245. D:Desktop>SET "CurrentDrive-TotalSpace=531.51"
  246.  
  247. D:Desktop>EXIT /B
  248.  
  249. D:Desktop>FOR /F %A IN ('powershell 531.51 - 1.49') DO Set "CurrentDrive-UsedSpace=%A"
  250.  
  251. D:Desktop>Set "CurrentDrive-UsedSpace=530.02"
  252.  
  253. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 530.02 / 531.51 * 100') DO (
  254. SET "CurrentDrive-UsedSpace-Percent1=%A"
  255. SET "CurrentDrive-UsedSpace-Percent2=%B"
  256. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  257. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  258. )
  259.  
  260. D:Desktop>(
  261. SET "CurrentDrive-UsedSpace-Percent1=99"
  262. SET "CurrentDrive-UsedSpace-Percent2=7196666102237"
  263. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  264. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  265. )
  266.  
  267. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 1.49 / 531.51 * 100') DO (
  268. SET "CurrentDrive-FreeSpace-Percent1=%A"
  269. SET "CurrentDrive-FreeSpace-Percent2=%B"
  270. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  271. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  272. )
  273.  
  274. D:Desktop>(
  275. SET "CurrentDrive-FreeSpace-Percent1=0"
  276. SET "CurrentDrive-FreeSpace-Percent2=280333389776298"
  277. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  278. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  279. )
  280.  
  281. D:Desktop>ECHO Drive Information For E:
  282. Drive Information For E:
  283.  
  284. D:Desktop>ECHO/ Used Space: 530.02 (99.7%)
  285. Used Space: 530.02 (99.7%)
  286.  
  287. D:Desktop>ECHO/ Free Space: 1.49 (0.2%)
  288. Free Space: 1.49 (0.2%)
  289.  
  290. D:Desktop>ECHO/ Total Space: 531.51
  291. Total Space: 531.51
  292.  
  293. D:Desktop>ECHO/
  294.  
  295.  
  296. D:Desktop>EXIT /B
  297.  
  298. D:Desktop>fsutil fsinfo statistics F: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo F:
  299.  
  300. D:Desktop>SET "CurrentDrive=F:"
  301.  
  302. D:Desktop>SET "CurrentDrive=F:
  303.  
  304. D:Desktop>FOR /F "tokens=7 delims= " %A IN ('fsutil volume diskfree F: |FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%A"
  305.  
  306. D:Desktop>Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "121982418944"
  307.  
  308. D:Desktop>FOR /F %A IN ('powershell 121982418944 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  309.  
  310. D:Desktop>SET "CurrentDrive_Temp=113.60498046875"
  311.  
  312. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("113.60498046875") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  313.  
  314. D:Desktop>SET "CurrentDrive_Temp1=113" & SET "CurrentDrive_Temp2=60498046875"
  315.  
  316. D:Desktop>SET "CurrentDrive_Temp3=60"
  317.  
  318. D:Desktop>IF "4" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  319.  
  320. D:Desktop>IF "60" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  321.  
  322. D:Desktop>SET "CurrentDrive-FreeSpace=113.60"
  323.  
  324. D:Desktop>EXIT /B
  325.  
  326. D:Desktop>FOR /F "tokens=6 delims= " %A IN ('fsutil volume diskfree F: |FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%A"
  327.  
  328. D:Desktop>CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "214748360704"
  329.  
  330. D:Desktop>FOR /F %A IN ('powershell 214748360704 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  331.  
  332. D:Desktop>SET "CurrentDrive_Temp=199.999996185303"
  333.  
  334. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("199.999996185303") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  335.  
  336. D:Desktop>SET "CurrentDrive_Temp1=199" & SET "CurrentDrive_Temp2=999996185303"
  337.  
  338. D:Desktop>SET "CurrentDrive_Temp3=99"
  339.  
  340. D:Desktop>IF "9" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  341.  
  342. D:Desktop>IF "100" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  343.  
  344. D:Desktop>SET "CurrentDrive-TotalSpace=200.00"
  345.  
  346. D:Desktop>EXIT /B
  347.  
  348. D:Desktop>FOR /F %A IN ('powershell 200.00 - 113.60') DO Set "CurrentDrive-UsedSpace=%A"
  349.  
  350. D:Desktop>Set "CurrentDrive-UsedSpace=86.4"
  351.  
  352. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 86.4 / 200.00 * 100') DO (
  353. SET "CurrentDrive-UsedSpace-Percent1=%A"
  354. SET "CurrentDrive-UsedSpace-Percent2=%B"
  355. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  356. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  357. )
  358.  
  359. D:Desktop>(
  360. SET "CurrentDrive-UsedSpace-Percent1=43"
  361. SET "CurrentDrive-UsedSpace-Percent2=2"
  362. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  363. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  364. )
  365.  
  366. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 113.60 / 200.00 * 100') DO (
  367. SET "CurrentDrive-FreeSpace-Percent1=%A"
  368. SET "CurrentDrive-FreeSpace-Percent2=%B"
  369. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  370. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  371. )
  372.  
  373. D:Desktop>(
  374. SET "CurrentDrive-FreeSpace-Percent1=56"
  375. SET "CurrentDrive-FreeSpace-Percent2=8"
  376. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  377. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  378. )
  379.  
  380. D:Desktop>ECHO Drive Information For F:
  381. Drive Information For F:
  382.  
  383. D:Desktop>ECHO/ Used Space: 86.4 (43.2%)
  384. Used Space: 86.4 (43.2%)
  385.  
  386. D:Desktop>ECHO/ Free Space: 113.60 (56.8%)
  387. Free Space: 113.60 (56.8%)
  388.  
  389. D:Desktop>ECHO/ Total Space: 200.00
  390. Total Space: 200.00
  391.  
  392. D:Desktop>ECHO/
  393.  
  394.  
  395. D:Desktop>EXIT /B
  396.  
  397. D:Desktop>fsutil fsinfo statistics G: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo G:
  398.  
  399. D:Desktop>SET "CurrentDrive=G:"
  400.  
  401. D:Desktop>SET "CurrentDrive=G:
  402.  
  403. D:Desktop>FOR /F "tokens=7 delims= " %A IN ('fsutil volume diskfree G: |FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%A"
  404.  
  405. D:Desktop>Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "214605746176"
  406.  
  407. D:Desktop>FOR /F %A IN ('powershell 214605746176 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  408.  
  409. D:Desktop>SET "CurrentDrive_Temp=199.867176055908"
  410.  
  411. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("199.867176055908") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  412.  
  413. D:Desktop>SET "CurrentDrive_Temp1=199" & SET "CurrentDrive_Temp2=867176055908"
  414.  
  415. D:Desktop>SET "CurrentDrive_Temp3=86"
  416.  
  417. D:Desktop>IF "7" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  418.  
  419. D:Desktop>IF "87" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  420.  
  421. D:Desktop>SET "CurrentDrive-FreeSpace=199.87"
  422.  
  423. D:Desktop>EXIT /B
  424.  
  425. D:Desktop>FOR /F "tokens=6 delims= " %A IN ('fsutil volume diskfree G: |FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%A"
  426.  
  427. D:Desktop>CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "214748360704"
  428.  
  429. D:Desktop>FOR /F %A IN ('powershell 214748360704 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  430.  
  431. D:Desktop>SET "CurrentDrive_Temp=199.999996185303"
  432.  
  433. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("199.999996185303") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  434.  
  435. D:Desktop>SET "CurrentDrive_Temp1=199" & SET "CurrentDrive_Temp2=999996185303"
  436.  
  437. D:Desktop>SET "CurrentDrive_Temp3=99"
  438.  
  439. D:Desktop>IF "9" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  440.  
  441. D:Desktop>IF "100" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  442.  
  443. D:Desktop>SET "CurrentDrive-TotalSpace=200.00"
  444.  
  445. D:Desktop>EXIT /B
  446.  
  447. D:Desktop>FOR /F %A IN ('powershell 200.00 - 199.87') DO Set "CurrentDrive-UsedSpace=%A"
  448.  
  449. D:Desktop>Set "CurrentDrive-UsedSpace=0.129999999999995"
  450.  
  451. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 0.129999999999995 / 200.00 * 100') DO (
  452. SET "CurrentDrive-UsedSpace-Percent1=%A"
  453. SET "CurrentDrive-UsedSpace-Percent2=%B"
  454. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  455. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  456. )
  457.  
  458. D:Desktop>(
  459. SET "CurrentDrive-UsedSpace-Percent1=0"
  460. SET "CurrentDrive-UsedSpace-Percent2=0649999999999975"
  461. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  462. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  463. )
  464.  
  465. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 199.87 / 200.00 * 100') DO (
  466. SET "CurrentDrive-FreeSpace-Percent1=%A"
  467. SET "CurrentDrive-FreeSpace-Percent2=%B"
  468. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  469. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  470. )
  471.  
  472. D:Desktop>(
  473. SET "CurrentDrive-FreeSpace-Percent1=99"
  474. SET "CurrentDrive-FreeSpace-Percent2=935"
  475. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  476. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  477. )
  478.  
  479. D:Desktop>ECHO Drive Information For G:
  480. Drive Information For G:
  481.  
  482. D:Desktop>ECHO/ Used Space: 0.129999999999995 (0.0%)
  483. Used Space: 0.129999999999995 (0.0%)
  484.  
  485. D:Desktop>ECHO/ Free Space: 199.87 (99.9%)
  486. Free Space: 199.87 (99.9%)
  487.  
  488. D:Desktop>ECHO/ Total Space: 200.00
  489. Total Space: 200.00
  490.  
  491. D:Desktop>ECHO/
  492.  
  493.  
  494. D:Desktop>EXIT /B
  495.  
  496. D:Desktop>fsutil fsinfo statistics H: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo H:
  497.  
  498. D:Desktop>fsutil fsinfo statistics I: | FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." 1>nul || CALL:GetDriveInfo I:
  499.  
  500. D:Desktop>SET "CurrentDrive=I:"
  501.  
  502. D:Desktop>SET "CurrentDrive=I:
  503.  
  504. D:Desktop>FOR /F "tokens=7 delims= " %A IN ('fsutil volume diskfree I: |FINDSTR /C:"Total # of free bytes"') DO Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "%A"
  505.  
  506. D:Desktop>Call:GetDriveInfo-Convert "CurrentDrive-FreeSpace" "906973425664"
  507.  
  508. D:Desktop>FOR /F %A IN ('powershell 906973425664 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  509.  
  510. D:Desktop>SET "CurrentDrive_Temp=844.684825897217"
  511.  
  512. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("844.684825897217") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  513.  
  514. D:Desktop>SET "CurrentDrive_Temp1=844" & SET "CurrentDrive_Temp2=684825897217"
  515.  
  516. D:Desktop>SET "CurrentDrive_Temp3=68"
  517.  
  518. D:Desktop>IF "4" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  519.  
  520. D:Desktop>IF "68" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  521.  
  522. D:Desktop>SET "CurrentDrive-FreeSpace=844.68"
  523.  
  524. D:Desktop>EXIT /B
  525.  
  526. D:Desktop>FOR /F "tokens=6 delims= " %A IN ('fsutil volume diskfree I: |FINDSTR /C:"Total # of bytes"') DO CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "%A"
  527.  
  528. D:Desktop>CALL:GetDriveInfo-Convert "CurrentDrive-TotalSpace" "1000202432512"
  529.  
  530. D:Desktop>FOR /F %A IN ('powershell 1000202432512 / 1024 / 1024 / 1024') DO SET "CurrentDrive_Temp=%A"
  531.  
  532. D:Desktop>SET "CurrentDrive_Temp=931.51110458374"
  533.  
  534. D:Desktop>FOR /F "Tokens=1-2 delims=." %A IN ("931.51110458374") DO SET "CurrentDrive_Temp1=%A" & SET "CurrentDrive_Temp2=%B"
  535.  
  536. D:Desktop>SET "CurrentDrive_Temp1=931" & SET "CurrentDrive_Temp2=51110458374"
  537.  
  538. D:Desktop>SET "CurrentDrive_Temp3=51"
  539.  
  540. D:Desktop>IF "1" GEQ "5" SET /A "CurrentDrive_Temp3+=1"
  541.  
  542. D:Desktop>IF "51" == "100" SET "CurrentDrive_Temp3=00" & SET /A CurrentDrive_Temp1+=1"
  543.  
  544. D:Desktop>SET "CurrentDrive-TotalSpace=931.51"
  545.  
  546. D:Desktop>EXIT /B
  547.  
  548. D:Desktop>FOR /F %A IN ('powershell 931.51 - 844.68') DO Set "CurrentDrive-UsedSpace=%A"
  549.  
  550. D:Desktop>Set "CurrentDrive-UsedSpace=86.83"
  551.  
  552. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 86.83 / 931.51 * 100') DO (
  553. SET "CurrentDrive-UsedSpace-Percent1=%A"
  554. SET "CurrentDrive-UsedSpace-Percent2=%B"
  555. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  556. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  557. )
  558.  
  559. D:Desktop>(
  560. SET "CurrentDrive-UsedSpace-Percent1=9"
  561. SET "CurrentDrive-UsedSpace-Percent2=32142435400586"
  562. SET "CurrentDrive-UsedSpace-Percent2=!CurrentDrive-UsedSpace-Percent2:~0,1!"
  563. SET "CurrentDrive-UsedSpace-Percent=!CurrentDrive-UsedSpace-Percent1!.!CurrentDrive-UsedSpace-Percent2!"
  564. )
  565.  
  566. D:Desktop>FOR /F "tokens=1-2 delims=." %A IN ('powershell 844.68 / 931.51 * 100') DO (
  567. SET "CurrentDrive-FreeSpace-Percent1=%A"
  568. SET "CurrentDrive-FreeSpace-Percent2=%B"
  569. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  570. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  571. )
  572.  
  573. D:Desktop>(
  574. SET "CurrentDrive-FreeSpace-Percent1=90"
  575. SET "CurrentDrive-FreeSpace-Percent2=6785756459941"
  576. SET "CurrentDrive-FreeSpace-Percent2=!CurrentDrive-FreeSpace-Percent2:~0,1!"
  577. SET "CurrentDrive-FreeSpace-Percent=!CurrentDrive-FreeSpace-Percent1!.!CurrentDrive-FreeSpace-Percent2!"
  578. )
  579.  
  580. D:Desktop>ECHO Drive Information For I:
  581. Drive Information For I:
  582.  
  583. D:Desktop>ECHO/ Used Space: 86.83 (9.3%)
  584. Used Space: 86.83 (9.3%)
  585.  
  586. D:Desktop>ECHO/ Free Space: 844.68 (90.6%)
  587. Free Space: 844.68 (90.6%)
  588.  
  589. D:Desktop>ECHO/ Total Space: 931.51
  590. Total Space: 931.51
  591.  
  592. D:Desktop>ECHO/
  593.  
  594. D:Desktop>EXIT /B
  595.  
  596. D:Desktop>pause
  597. Press any key to continue . . .
  598.  
  599. D:Desktop>EXIT /B
  600.  
  601. @echo off
  602. setlocal enableDelayedExpansion
  603. cls
  604. for /f "tokens=1*" %%A in ('fsutil fsinfo drives') do for %%C in (%%B) do (
  605. fsutil fsinfo statistics %%C |FINDSTR /I /C:"The FSUTIL utility requires a local NTFS volume." >nul || CALL:GetDriveInfo %%C
  606. )
  607. exit /b
  608.  
  609. :GetDriveInfo
  610. set "free="
  611. for /f "tokens=2 delims=:" %%A in ('fsutil volume diskfree %~1') do (
  612. if not defined free (set free=%%A) else (set total=%%A & goto :break)
  613. )
  614. :break
  615. set "cmd=$used=%total%-%free%;$usedP=$used/%total%;$used=$used/1073741824;$freeP=%free%/%total%;$free=%free%/1073741824;$total=%total%/1073741824;"{0:N2}" -f $used;"{0:P1}" -f $usedP;"{0:N2}" -f $free;"{0:P1}" -f $freeP;"{0:N2}" -f $total"
  616. set i=0
  617. for /f "delims=" %%N in ('echo !cmd!^|powershell -Command -') do (
  618. set /a i+=1
  619. set n!i!=%%N
  620. )
  621. set "drive=%~1"
  622. echo Drive Information For %drive:=%
  623. echo Used Space: %n1% (%n2: =%)
  624. echo Free Space: %n3% (%n4: =%)
  625. echo Total Space: %n5%
  626. exit /b
  627.  
  628. @echo off
  629. setlocal enableDelayedExpansion
  630. cls
  631. set "printCmd=;"Used Space: {0:N2} ({1:P1}^)`nFree Space: {2:N2} ({3:P1}^)`nTotal Space: {4:N2}" -f $used,$usedP,$free,$freeP,$total"
  632. for /f "skip=1 tokens=1-3 delims= " %%A in ('wmic logicalDisk get deviceId^, freeSpace^, size') do if "%%C" neq "" (
  633. set "defineVarsCmd=$used=%%C-%%B;$usedP=$used/%%C;$used=$used/1073741824;$freeP=%%B/%%C;$free=%%B/1073741824;$total=%%C/1073741824"
  634. echo Drive Information For %%A
  635. for /f "delims=" %%S in ('echo !defineVarsCmd!!printCmd!^|powershell -Command -') do (
  636. set "str=%%S"
  637. echo !str: %%=%%!
  638. )
  639. echo(
  640. )
  641.  
  642. @echo off
  643. setlocal
  644. set num=%1
  645. set part1=%num:.=&rem %
  646. set "part2=%num:*.=%"
  647. if "%part2%" neq "%num%" (set "part2=%part2%00") else set "part2=00"
  648. set "num=%part1%.%part2:~0,2%
  649. echo num=%num%
  650.  
  651. @echo off
  652. setlocal
  653. for /f "tokens=1,2 delims=." %%A in ("0%~1") do (
  654. set "part1=%%A"
  655. set "part2=1%%B000"
  656. )
  657. for /f "tokens=* delims=0" %%N in ("%part1%1") do (
  658. set /a "part1=%%N/10, roundup=%part2:~3,1%/5, part2=%part2:~0,3%+roundup, part1+=(part2/200)"
  659. )
  660. set "num=%part1%.%part2:~1,2%"
  661. echo num=%num%
  662.  
  663. @echo off
  664. :roundDecimal number precision
  665. setlocal enableDelayedExpansion
  666. for /f "tokens=1,2 delims=." %%A in ("0%~1") do (
  667. set "part1=%%A"
  668. set "part2=1%%B0000000000"
  669. )
  670. set /a len=%~2+1
  671. for /f "tokens=* delims=0" %%N in ("%part1%1") do (
  672. set /a "part1=%%N/10, roundup=!part2:~%len%,1!/5, part2=!part2:~0,%len%!+roundup"
  673. set /a "part1+=(!part2:~0,1!/2)"
  674. )
  675. if %~2 gtr 0 (set num=%part1%.!part2:~1,%~2!) else set num=%part1%
  676. echo num=%num%
Add Comment
Please, Sign In to add comment