Какой самый простой способ узнать количество файлов в каталоге папок? - PullRequest
1 голос
/ 15 мая 2011

Это легко достижимо с помощью сценариев MS-DOS, или мне придется прибегнуть к C ++, Python, Perl или другим способам достижения этого?

Ответы [ 3 ]

3 голосов
/ 15 мая 2011

Чтобы быть проще, он должен пройти тест "моя бабушка может это сделать".

После тщательного бенчмаркинга я решил, что самым простым способом будет открыть каждую папку в проводнике Windows, посмотреть количество файлов в строке состояния и использовать калькулятор для добавления количества.

Медленно, но эффективно.

EDIT

Это может быть не так просто, но, как опытный пользователь Cygwin, я склонен использовать команду find и wc.

find -type 'f' | wc -l
1 голос
/ 15 мая 2011

в cmd вы можете сделать:

set i=0
for /f %%G in ('dir /b /A-d <dirname>') do set /a i=i+1

в PowerShell (который доступен по умолчанию в Windows 7) вы можете сделать:

Get-ChildItem <dirname> | Where-Object { -not $_.PSIsContainer } | Measure-Object

Эти команды учитывают только файлы, если вы также хотите сосчитать каталоги, удалите /A-d для версии dos и Where-Object { -not $_PSIsContainer } для команды powershell. Если вы хотите вернуться в подкаталоги, используйте Get-ChildItem -Recurse в powershell или добавьте переключатель /s к команде dir в версии dos

0 голосов
/ 15 мая 2011

Это очень просто в питоне:

import os

walker = os.walk(path_to_search_root)
files = 0

for dir in walker:
    files += len(dir[2]) #dir[2] is the list of files in the directory

print files
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...