#duplicate #dupes

app fddf

Fast, parallelized duplicate file finder

11 stable releases

1.7.0 Apr 12, 2020
1.6.1 Nov 23, 2019
1.6.0 Oct 26, 2019
1.4.1 Nov 13, 2018
1.3.1 Jun 21, 2017

#1134 in Command line utilities

Download history 5/week @ 2022-03-07 45/week @ 2022-03-14 34/week @ 2022-03-21 2/week @ 2022-03-28 4/week @ 2022-04-04 4/week @ 2022-04-11 58/week @ 2022-04-25 56/week @ 2022-05-02 16/week @ 2022-05-09 190/week @ 2022-05-16 63/week @ 2022-05-23 80/week @ 2022-05-30 40/week @ 2022-06-06 5/week @ 2022-06-20

148 downloads per month


315 lines


Fast data dupe finder

This is a small Rust command-line program to find duplicate files in a directory recursively. It uses a thread pool to calculate file hashes in parallel.

Duplicates are found by checking size, then (Blake3) hashes of parts of files of same size, then a byte-for-byte comparison.


Directly from crates.io with cargo install fddf.

From checkout:

cargo build --release
cargo run --release

Minimum supported Rust version is 1.39.0.


fddf [-s] [-t] [-S] [-m SIZE] [-M SIZE] [-v] <rootdir>

-s: report dupe groups in a single line
-t: produce a grand total
-S: don't scan recursively for each directory given
-f: check for files with given pattern only
-F: check for files with given regular expression only
-m: minimum size (default 1 byte)
-M: maximum size (default unlimited)
-v: verbose operation

By default, zero-length files are ignored, since there is no meaningful data to be duplicated. Pass -m 0 to include them.

PRs welcome!


~132K SLoC