file batch menunjukkan ukuran folder tetapi tidak menunjukkan ukuran subfolder dan subfolder dari subfolder itu

Program batch saya memang menunjukkan ukuran folder yang diinginkan tetapi tidak menunjukkan ukuran folder termasuk sub-foldernya. Itu hanya melewatkan mereka. Bagaimana cara membuat program melihat ukuran total folder?

Program di sini:

@echo off &setlocal enabledelayedexpansion
:: folder choose
echo enter desired directory
set /p dir=
cd /d %dir%
::getting folder size
for /f "tokens=3" %%a IN ('dir /a-d /-c') DO (
   set size=!free!
   set free=%%a
   )
echo free space is %free% bytes
echo size is %size% bytes 

Terima kasih sebelumnya!

Niel


person Niels    schedule 14.12.2016    source sumber


Jawaban (2)


Anda melewatkan menambahkan opsi /s ke perintah dir:

@echo off
setlocal EnableExtensions EnableDelayedExpansion
set "FOLDER=" & set /P FOLDER=""
for /f "tokens=3" %%A in ('
    dir /S /A:-D /-C "!FOLDER!"
') do (
    set "SIZE=!FREE!"
    set "FREE=%%A"
)
echo free space is %free% bytes
echo size is %size% bytes 
endlocal
person aschipfl    schedule 19.12.2016

Untuk melihat ukuran folder di Desktop.

for /f "skip=2 tokens=3" %A in ('Reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Desktop"') do set doc=%A

for /f "usebackq tokens=2* delims= " %i IN (`dir "%doc%" /a /s ^|findstr /i /v "\/"`) DO @echo %j&echo.

Untuk melihat ukuran folder folder System32.

for /f "usebackq tokens=2* delims= " %i IN (`dir "%windir%\system32" /a /s ^|findstr /i /v "\/"`) DO @echo %j&echo.

Lihat Findstr /?

person Community    schedule 14.12.2016