Removed the MD5 option which was useless.
[finddup.git] / finddup.1
index e021a81..e262386 100644 (file)
--- a/finddup.1
+++ b/finddup.1
@@ -10,89 +10,100 @@ finddup \- Find files common to two directories (or not)
 
 .SH "SYNOPSIS"
 
 
 .SH "SYNOPSIS"
 
-\fBfinddup\fP [OPTION]... DIR1 [[not:]DIR2]
+\fBfinddup\fP [OPTION]... DIR1 [[and:|not:]DIR2]
 
 .SH "DESCRIPTION"
 
 With a single directory argument, \fBfinddup\fP prints the duplicated
 
 .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.
+files found in it.
 
 
-It compares files by first comparing their sizes, hence goes
+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. The and: prefix is assumed by default and necessary only if
+you have a directory name starting with `not:'.
+
+This command compares files by first comparing their sizes, hence goes
 reasonably fast.
 
 reasonably fast.
 
-When looking for identical files, \fBfinddup\fP associates by default
-a group ID to every content, and prints it along the file names.
+When looking for identical files, \fBfinddup\fP associates a group ID
+to every content, and prints it along the file names. Use the \fB-g\fP
+to switch it off.
 
 Note that
 .B finddup DIR
 
 Note that
 .B finddup DIR
-is the same as
+is virtually the same as
 .B finddup -i DIR DIR
 
 .SH "OPTIONS"
 .TP
 .B finddup -i DIR DIR
 
 .SH "OPTIONS"
 .TP
-\fB-h\fR
+\fB-h\fR, \fB--help\fR
 display help and exit
 .TP
 display help and exit
 .TP
-\fB-d\fR
+\fB-d\fR, \fB--ignore-dots\fR
 ignore files and directories starting with a dot
 .TP
 ignore files and directories starting with a dot
 .TP
-\fB-0\fR
+\fB-0\fR, \fB--ignore-empty\fR
 ignore empty files
 .TP
 ignore empty files
 .TP
-\fB-c\fR
+\fB-c\fR, \fB--hide-matchings\fR
 do not show which files from DIR2 corresponds to files from DIR1
 (hence, show only the files from DIR1 which have an identical twin in
 DIR2)
 .TP
 do not show which files from DIR2 corresponds to files from DIR1
 (hence, show only the files from DIR1 which have an identical twin in
 DIR2)
 .TP
-\fB-g\fR
+\fB-g\fR, \fB--no-group-ids\fR
 do not show the file group IDs
 .TP
 do not show the file group IDs
 .TP
-\fB-p\fR
+\fB-p\fR, \fB--show-progress\fR
 show progress information in stderr
 .TP
 show progress information in stderr
 .TP
-\fB-r\fR
+\fB-r\fR, \fB--real-paths\fR
 show the real path of the files
 .TP
 show the real path of the files
 .TP
-\fB-i\fR
+\fB-i\fR, \fB--same-inodes-are-different\fR
 files with same inode are considered as different
 
 .SH "BUGS"
 
 None known, probably many. Valgrind does not complain though.
 
 files with same inode are considered as different
 
 .SH "BUGS"
 
 None known, probably many. Valgrind does not complain though.
 
+The current algorithm is dumb, that is it does not use any hashing of
+the file content. I tried md5 on the whole file, which is not
+satisfactory because files are often never read entirely hence the md5
+can not be properly computed. I also tried XOR of the first 4, 16 and
+256 bytes with rejection as soon as one does not match. Did not help
+either.
+
 .SH "WISH LIST"
 
 The format of the output should definitely be improved. Not clear how.
 
 .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. However, I doubt it would improve speed much.
-
-Their should be some fancy option to link two instances of the command
-running on different machines to reduce network disk accesses.
+Their could be some fancy option to link two instances of the command
+running on different machines to reduce network disk accesses. Again,
+this may not help much, for the reason given above.
 
 .SH "EXAMPLES"
 
 
 .SH "EXAMPLES"
 
-.B finddup -cg blah something
+.B finddup -p0d blah
 
 .fi
 
 .fi
-List files found in \fB./blah/\fR which have a matching file with same
-content in \fB./something/\fR. Do not display the group IDs.
+List duplicated files in directory ./blah/, show a progress bar,
+ignore empty files, and ignore files and directories starting with a
+dot.
 
 .P
 .B finddup sources not:/mnt/backup
 
 .fi
 List all files found in \fB./sources/\fR which do not have
 
 .P
 .B finddup sources not:/mnt/backup
 
 .fi
 List all files found in \fB./sources/\fR which do not have
-content-matching equivalent in \fB/mnt/backup\fR.
+content-matching equivalent in \fB/mnt/backup/\fR.
 
 .P
 
 .P
-.B finddup tralala cuicui
+.B finddup -g tralala cuicui
 
 .fi
 List groups of files with same content which exist both in
 
 .fi
 List groups of files with same content which exist both in
-\fB./tralala/\fR and \fB./cuicui/\fR.
+\fB./tralala/\fR and \fB./cuicui/\fR. Do not show group IDs, instead
+write an empty lines between groups of files of same content.
 
 .SH "AUTHOR"
 
 
 .SH "AUTHOR"