Войти

Показать полную графическую версию : [решено] Подсчет количества файлов в разных папках и вывод суммы количества


Alexander_88
07-07-2019, 22:14
Здравствуйте. Подскажите, как можно подсчитать количество файлов, заданных по маске, по различным путям, а также вывести сумму всех этих файлов.

Пример:
Я задаю в скрипте три пути и имена файлов (по маске).

C:\\test\*start*.*
C:\\krug\*aist*.*
C:\\mozhka\*trep*.*

Папки с файлами:

test
ajsdhglsdhlg.mp4
23352o1.avi
003424start434.avi
dastart3213.wmv

krug
paist24.mp3
kran.mp3
parter.jpg

mozhka
nhl.mp4
lodka.bmp
port.mp3

В результате, скрипт выводит на экран пути и количество найденных файлов, а в самом низу сумму всех таких файлов:
C:\\test\*start*.* - 2
C:\\krug\*aist*.* - 1
C:\\mozhka\*trep*.* - 0
3

Все :)

megaloman
08-07-2019, 00:22
@Echo Off
cls
Set /A N=0
Call :NFiles "Z:\Box_In\*.txt" "N" "M1"
Call :NFiles "Z:\Box_In\*.bat" "N" "M2"
Call :NFiles "Z:\Box_In\*.zip" "N" "M3"
Call :NFiles "Z:\Box_In\*.js" "N" "M4"

Echo %N%
Pause
Exit /B

:NFiles
SetLocal
Set /A N=0
FOR /F "usebackq tokens=*" %%a IN (`2^>nul Dir %1 /B /A:-D`) DO Call Set /A N+=1
Echo %1 - %N%
EndLocal &(Set /A %~2+=%N%) &(Set %~3=%1 - %N%)
Exit /B

Alexander_88
08-07-2019, 03:37
Спасибо, все выводится и суммируется :)




© OSzone.net 2001-2012