.TH "FINDDUP" 1 "Mar 2010" "Francois Fleuret" "User Commands" \" This man page was written by Francois Fleuret \" and is distributed under a Creative Commons Attribution-Share Alike \" 3.0 License. .SH "NAME" finddup \- Find files common to two directories (or not) .SH "SYNOPSIS" \fBfinddup\fP [OPTION]... DIR1 [[not:]DIR2] .SH "DESCRIPTION" With a single directory argument, \fBfinddup\fP prints the duplicated files found in it. With two directories, it prints either the files common to both DIR1 and DIR2, or with the `not:' prefix, the ones present in DIR1 and not in DIR2. It compares files by first comparing their sizes, hence goes reasonably fast. When looking for identical files, .B finddup by default associates a group ID to every content, and prints it along the file names. .SH "OPTIONS" .TP \fB-h\fR display help and exit .TP \fB-d\fR ignore files and directories starting with a dot .TP \fB-c\fR do not show which files from DIR2 corresponds to files from DIR1 .TP \fB-g\fR do not show the file group IDs .TP \fB-p\fR show progress information in stderr .TP \fB-r\fR show the real path of the files .SH "BUGS" None known, probably many. Valgrind does not complain though. .SH "WISH LIST" The format of the output should definitely be improved. Not clear how. The comparison algorithm could definitely use some MD5 kind of signature. I doubt it would really speed up a lot. Their should be some fancy option to run two instances of the command on different machines so that comparison could be done without disk access where the disk are physically. .SH "EXAMPLES" .B finddup -cg blah something .fi List files found in .B ./blah/ which have a matching file with same content in .B ./something/ without the group IDs .P .B finddup sources not:/mnt/backup .fi List all files found in .B ./sources/ which do not have content-matching equivalent in .B /mnt/backup .P .B finddup tralala cuicui .fi List groups of files with same content which exist both in .B ./tralala/ and .B ./cuicui/ .SH "AUTHOR" Written by Francois Fleuret and distributed under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.