Fast File Count: Recursively count files and directories very quickly
Project description
Fast File Count in Python
This is a Python package to quickly count the number of files and directories in a given path. Optionally you can count recursively and include hidden files in the total.
This package is a wrapper around fast-file-count
by Christopher Schultz
. Credit for the initial version
belongs to Christopher Schultz, I wrote the Python wrapper, converted the
Windows code to use builtin functionality, and packaged it up. See the file
src/c_count.c
for the other contributors and see the commit history of
this package on GitHub for my exact changes.
Installation
Installation can be done easily with pip:
$ pip install ffcount
Usage
There is a command line application called ffcount
, which recursively
counts files and directories:
$ ffcount
See ffcount -h
for options.
The package can also be used as a Python library, using the ffcount
function. This function returns a tuple (number_of_files, number_of_dirs)
and it can be used as follows:
>>> from ffcount import ffcount
# count everything under the current path
>>> ffcount()
(521013, 43012)
# count without hidden files
>>> ffcount(hidden=False)
(234012, 12082)
# use a different path
>>> ffcount('/tmp')
(81, 10)
Note that ffcount
counts links as files, even if they point to a
directory. In some cases, this explains the discrepancy with other ways of
counting.
To obtain the full function documentation, simply run:
>>> import ffcount
>>> help(ffcount)
License
The original C code by Christopher Schultz was licensed under the Apache License 2.0. This package is therefore licensed under this license as well.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for ffcount-0.2.1-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfdaa75038730b005aed75a5a0970ed4dc697ec910784e84c61f59136a1f8d2a |
|
MD5 | b7018f05d5473c4defce3b116e38607f |
|
BLAKE2b-256 | 338717ba3f3b96a48f97ffeec31a9276e3bbcfcca45efaf25e5827949aa0e7d1 |
Hashes for ffcount-0.2.1-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56f1e08df7ef9ab040c117e52ed2c5b00994915ed7651838052240842d454841 |
|
MD5 | adb0feb3d4cd171b6d21b3da264a673b |
|
BLAKE2b-256 | 699a0f493dbba2e7c5cea1aaee7de392751b1cdfda9a3e70b7705322f233ffdf |
Hashes for ffcount-0.2.1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5d3ba4899b71dc7f6386b448a92d46930837fe4fe62de6e49739308d3830a06 |
|
MD5 | b9ad3976b2d79a282d0bd05e25b236f9 |
|
BLAKE2b-256 | a4aa993df8c8bedde3d767b4be4718338a995cb7bc39f72ceb059b1ed0161917 |
Hashes for ffcount-0.2.1-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f78df895d6f9fb0b338903223bc0389f7e4f6c3c7d9db229f2aea0463f974901 |
|
MD5 | c858bc679f389c2776b7451974dcfd28 |
|
BLAKE2b-256 | 29c5145a8c17916cd89ac2b75b41a0d8e79d5be7ab09accc020b55b675c7e26e |
Hashes for ffcount-0.2.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de1349591d631dc5fd1ae65810645b68b2e2b7ec7ce51094ef75b58aac6e7016 |
|
MD5 | d81611e2eec4f4480df035cc1ea936c5 |
|
BLAKE2b-256 | f2684217856399ab8168e81d696f6cde5cf35728c0d69440f6280f930b82056f |
Hashes for ffcount-0.2.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5f8732b44245a729ccd12c44f75adde0bc0f9f95ddc1081d5f11d46268232dd |
|
MD5 | 4a242a89fdb0998c787e341055a66423 |
|
BLAKE2b-256 | 27e3b19d019aefd0a9331baedaa232c3b3bd62863b788c52c1d7970571f841d3 |
Hashes for ffcount-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8194242772d6ace5ef7815a336f406730afc658d96fc1e52483c99b48c312f5 |
|
MD5 | c1f3136260f59e15d38914e9f2d1bf4c |
|
BLAKE2b-256 | 7d77db4c47611098870c2a0b9d46ac951c0aeffc420bcad7c91959aecf78fd68 |
Hashes for ffcount-0.2.1-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 597164f162eb5a23f6df8c528e1a7c785051adfc59f41b9bb83f52088d436311 |
|
MD5 | 66fd6895841ee9af3aaa099989dbcd66 |
|
BLAKE2b-256 | a1c80038b1352cc9aebb882955095aada2941c0507127f6ef9d1ac3bf0809e0c |
Hashes for ffcount-0.2.1-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ab960ffd86245e9603cf73f03b761d99aa9f5aec05740c9619ca822a45fa58a |
|
MD5 | cde978de4a39573b1755030207958b5d |
|
BLAKE2b-256 | 9bea7aa4f3962e15a86a933b303dfbafa493684132aab3e62a83085b6da6dd39 |
Hashes for ffcount-0.2.1-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 934e3288acd9137d4d0a3c656fdede3bff8ce8c4a9917b151dbceccc5bbf3e0d |
|
MD5 | 88184ee0e269037495d4e99e7d95a5c9 |
|
BLAKE2b-256 | bf5754641cf6b0b85281b01e04b9d891034d87ccae7ca10cf1c7b66df9ca1a16 |
Hashes for ffcount-0.2.1-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbc36701279e331ddc087fcb5ed5ae932d4d4ba8963369f8957b18bb5d3aacd9 |
|
MD5 | 87aaa023d1797139264bd0fa656025fe |
|
BLAKE2b-256 | 7f155303ba0232d508018540ec0a94a0fa4d503a780feb21c7ae117c71599ee4 |
Hashes for ffcount-0.2.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c63621d3fb6a4ca11fbd5772d36a8a5e27ea8df7616953cf42f3e720309e0da8 |
|
MD5 | 551a22ccb878877242bfb8c2ab84d097 |
|
BLAKE2b-256 | 033fb222b4aa1090fb29a5a9f9c528d0dfc05bff4df5b5fc4d7f296757bc8686 |
Hashes for ffcount-0.2.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5dbc9aeff56a4b04117778cf156b02348896d3d452f17d9072630a8fea57687f |
|
MD5 | 1cc9316baf45d092212b27449275b636 |
|
BLAKE2b-256 | 5e2adf333a96aa3b9690785ecf0812bb6c219dd97d4ab71780c712ceb7ffde22 |
Hashes for ffcount-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | db2309f71d0f1c4db6114083454350a5ff58c9cf2a7801dab49c02a6a537e420 |
|
MD5 | 83083aeb79ce8edd1bba09fff196a341 |
|
BLAKE2b-256 | a79325c54ff2fc5c189729d60cabfd1cfa53e8e0356e9aed072527da5126b3a4 |
Hashes for ffcount-0.2.1-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8853093121fb189571b933466ceb06a9cbd8b7db69ac6d36ed1fc0b37920e505 |
|
MD5 | 7c9b0af1e43590623c7565e78b1a9e14 |
|
BLAKE2b-256 | fee5d3ba1068c30e1bb375d1cf0d678fb001dfb3a389e3c02de36670a77270a5 |
Hashes for ffcount-0.2.1-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d8d5acf5ebfa6253e3e1f09723c91c5929cd46ee93ca48a73fa2ef35b21d570 |
|
MD5 | bd65c2c1bdba9f421daecf8680663ba5 |
|
BLAKE2b-256 | 80606cd3b594bd695040dbbbd7dfa33290c68a4efc32e717353cb4d5dcc3face |
Hashes for ffcount-0.2.1-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3550ec51983ef859d53b9f4b6e24c24f0cba1f0f1698659c364b9aebb14e3d3f |
|
MD5 | 69524ab2b801c34435190882e9c35300 |
|
BLAKE2b-256 | f9568091fd1f8fddf19d345ddd2f2be84b1501c560f4e2619fbece9be1e2c544 |
Hashes for ffcount-0.2.1-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80ab53731627f13b75462d42146f9c5ae4d65a155011fe908fecc1babdc1fe90 |
|
MD5 | 34f7ae99041c480dd51d8382632b8522 |
|
BLAKE2b-256 | 88e589259014bfad0383f5b13850911f9668ceac1aaf1fa012e8c16a130b57f0 |
Hashes for ffcount-0.2.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc4a579307d0f091aa166082537fa2ad71d4b65acafa7985cffeefed6b5bbdbc |
|
MD5 | 63d87e7b2b6488fc5406dd545d555956 |
|
BLAKE2b-256 | 2e23acd31e412e96657c722367cdbc0535634fbae0f91cb278ddff0f0a580962 |
Hashes for ffcount-0.2.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8b80581b92f2e8b9d4ce7baca603fc9219100e728132a830664528038478f5c |
|
MD5 | 6542af30c36a5fd4036a4abd8f096b56 |
|
BLAKE2b-256 | 8b85896dde47d9b8043ee78b6fa85e9e87cd8f755bb2f99085a2341f906f257d |
Hashes for ffcount-0.2.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ec09a056e0abdf71c9e6dc4fe19b57786877e77207901817358fa8d0264eed8 |
|
MD5 | d82f42cebea30c5e8c1c526c290f062f |
|
BLAKE2b-256 | 58dc6bd4b415eb638ea960283dbee1e43f5cc44e498a2c2ec55b76274adfab71 |
Hashes for ffcount-0.2.1-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7772fd520e1eb592396171e2074579f8161dea79bd1bbe86e38480492cb40e01 |
|
MD5 | 70c53994e8d0f6472d3ef887d005fad8 |
|
BLAKE2b-256 | 7eeae82e079d253e96aad9d3b309cff1a924a368c5bbc64268ae66c041421e4a |
Hashes for ffcount-0.2.1-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb6ea97d277ea52117862d4f030a236a3f905697a068694b46d664400d7b0540 |
|
MD5 | 27adc845e9fa92060c3c6ac5673d09e3 |
|
BLAKE2b-256 | 29e354450b25fddd78f9588e95f07790386f4bd7e45bf317d26944d6f4f74ab1 |
Hashes for ffcount-0.2.1-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3889bf31cf907569ab2c20238434664505ce1aeb2adaabb7bc510e4b0f11aa6a |
|
MD5 | 67dffd7b8bbe254337ef45d76527e8d9 |
|
BLAKE2b-256 | b05fd4ca9ba1d534a0c328ad25194c22b8354059d17fec01a673e2bcb573fe00 |
Hashes for ffcount-0.2.1-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c3a3bf7daabda018fd23bbdcf16941fd83bbf03012d01465e0f279f66df1b35 |
|
MD5 | 548bc9ed46232edba90677aebd493840 |
|
BLAKE2b-256 | ede9e4e69a498ef5ad0e3c89e19241ae03f4d82ca5f1083160be4c9508b370fc |
Hashes for ffcount-0.2.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0a00fb22d0750cc20b81fd3f3969f80213cf75aaddc5988d22b42521802fd06 |
|
MD5 | 3d0dcc7a21e62864f3c4c9030a6733ea |
|
BLAKE2b-256 | 8d950aa6eb94ab1066a962023b029d5c1bb03bd0fde442851e916062fb25972e |
Hashes for ffcount-0.2.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b82cc2dd0a0a8d450371f9b6c980674d8d0a596fe302547765fa4f4fc7aff3c |
|
MD5 | eec01c7fadbd7d0c858b2025d1fd867e |
|
BLAKE2b-256 | a29b8c7ce66357c4ef8b1adaf979b54711f1070fd8870b7ea16facf04483c704 |
Hashes for ffcount-0.2.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b79c7714d595e44353184e7d770d73415354c34df81d37cd4c31c56f90cf330 |
|
MD5 | 680a1375acd71020e476c8bddf4988d5 |
|
BLAKE2b-256 | cdfeb7382f6f138e70cd4b9235fd19f9159a661f463651cd491e651f54c06fd1 |
Hashes for ffcount-0.2.1-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | da6deb13b0d12bf5eabd854432587984a8e0aaa0ad1f4b8b336254e1abe78725 |
|
MD5 | 158a6f29afd1b97af6e51f111a249d94 |
|
BLAKE2b-256 | cfaa67b38ffb189f4ea0ad3f028369c32973cf696bc4074cfc666a54daaa49cf |
Hashes for ffcount-0.2.1-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 374b7d8ba0659ace98e5689cd4fc42b3510cc6748634056851743c80504a5803 |
|
MD5 | 27f67607e457e96d0c7194614f1de5a9 |
|
BLAKE2b-256 | 6dd51382706c781fe82ff9cb5eda45224ab693093a8987b10206a425268966da |
Hashes for ffcount-0.2.1-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c4246b3f97c1f8ec922084772021ae28b76e213a392c21099d29b8a7ef0cb6e |
|
MD5 | 14b0089ead75b33d49867d4e8e30d1c1 |
|
BLAKE2b-256 | 545e5ab41d17a2bcfd2db598caa8d19c60e69c62890ee232b259b20cd8bc51e8 |
Hashes for ffcount-0.2.1-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7996a6b880c772048a69061f8e6e280b99a06cd3363e8a266d8b7de108eecd4d |
|
MD5 | ba14a29b91173b98707dc1b702754f67 |
|
BLAKE2b-256 | b2c965ee73559978a46053f189d26d1a1353f22938c2e415d599f24405b2a1a0 |
Hashes for ffcount-0.2.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 701d08ab2cc0594f334787197bc3e21fd1f5929f50d466b4eb66c0b6d00fba45 |
|
MD5 | 932cf5545e9ea3200c1544068e76a806 |
|
BLAKE2b-256 | b666c73f5086fd976a572272e99f390a088f5979b9322f767b2e7bd96d031b2a |
Hashes for ffcount-0.2.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad8575cfd5d05d007a9bc4502b90d19d20ed51bd9c835ea0622d3816955f3b61 |
|
MD5 | 32df9e67348fcc68b9066c8485523c55 |
|
BLAKE2b-256 | 46a998561d6894dcc1b54e6af1f2107afc9f487c562a4aab5bd84946ac29787d |
Hashes for ffcount-0.2.1-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31fd3786955037cba6693027c9b7df16c08cef89694af2822e40c8184ebd07b2 |
|
MD5 | f781327e25a55536997624457174c96c |
|
BLAKE2b-256 | 2def0b396044200f69ed18839cc1fdd668e3e4f5fadee3a66d9203f30be90fe2 |