equal-files: Shell command for finding equal files

[ console, program ] [ Propose Tags ]

Shell command that finds files with equal content in a given set of files. This is useful for finding duplicates in a set of documents where the same document might have been stored by accident with different names. Use it like

equal-files `find my_dir -type f`


find my_dir -type f | xargs equal-files

If the file names contain spaces, better use

find my_dir -type f -printf "'%p'\n" | xargs equal-files


equal_files -r my_dir

The program reads all input files simultaneously, driven by sorting and grouping of their content. However be prepared that due to the simultaneous access you may exceed the admissible number of opened files. Thus you may prefer to run it like

equal_files -r -p 512 my_dir

The program can be used as a nice example of a declarative yet efficient implementation of a non-trivial algorithm, that is enabled by lazy evaluation.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.0.1, 0.0.2,, 0.0.3, 0.0.4, 0.0.5,,,,
Dependencies base (>=3 && <5), bytestring (>=0.9 && <0.12), explicit-exception (>=0.1 && <0.3), filemanip (>=0.3.5 && <0.4), transformers (>=0.2 && <0.7), utility-ht (>=0.0.1 && <0.1) [details]
License LicenseRef-GPL
Author Henning Thielemann <haskell@henning-thielemann.de>
Maintainer Henning Thielemann <haskell@henning-thielemann.de>
Category Console
Home page http://code.haskell.org/~thielema/equal-files/
Source repo this: darcs get http://code.haskell.org/~thielema/equal-files/ --tag
head: darcs get http://code.haskell.org/~thielema/equal-files/
Uploaded by HenningThielemann at 2023-01-15T11:24:10Z
Distributions NixOS:, Stackage:
Reverse Dependencies 1 direct, 0 indirect [details]
Executables equal-files
Downloads 7403 total (51 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2023-01-15 [all 1 reports]