我試圖做一個批處理腳本,計算一個特定檔案夾的檔案大小(GB)。該檔案夾可能超過2GB。我試著這樣做:
@echo off
設定大小=0
for /r %%x in (folder directory*) do set /a size =%%~zx
echo %size% GigaBytes
暫停
但這總是回傳零,并且被限制在2GiB。
然后我嘗試這樣做:
@For /F "tokens=*" %%a IN ('"dir %1 /s /- | find "bytes" | find /v "free"") do @Set summaryout=%%a
@For /f "tokens=1,2 delims=)" %%a in ("%summaryout%") do @set filesout=%%a&set sizeout=%%b
設定sizeout=%sizeout:bytes=%。
@設定sizeout=%sizeout:=%
@Echo Size is :%sizeout%.
暫停
但是我不知道如何定義一個目錄以及如何設定測量單位(GB)。
PowerShell也不是一個選項,因為這必須在沒有它的W2k系統上運行。
uj5u.com熱心網友回復:
這可以在一個小小的vbscript的幫助下完成!
標籤:@echo off
獲取檔案夾大小的標題腳本
echo為你獲取檔案夾的大小...
setlocal disabledelayedexpansion
設定"VBS=%Temp%ConvertSize.vbs"。
設定"folder=%~1"。
如果沒有定義檔案夾,設定"folder=
