FDUPES(1)
๐ FDUPES ๐
okay bestie, so this is fdupes โ it lives in the General Commands Manual (that's section 1 of the manual, iykyk), and it is literally the girl who finds your duplicate files for you. no cap. she's iconic, she's thorough, and she will absolutely snitch on that one folder where you saved the same pic four times. ๐ต๏ธโโ๏ธโจ
โจ NAME โจ
fdupes โ finds duplicate files in a given set of directories ๐ซถ
๐ SYNOPSIS ๐
fdupes [ options ] DIRECTORY ...
๐ธ DESCRIPTION ๐ธ
So basically, it searches the path you give it for duplicate files. And the way it does that?? She compares file sizes and MD5 signatures first, and then does a whole byte-by-byte comparison on top of that, just to be absolutely sure. the way she double-checks everything... main character energy fr fr ๐
โจ OPTIONS โจ
-r,--recurseโ for every directory you hand her, she follows the subdirectories she runs into inside it. go deeper. always. ๐-R,--recurse:โ okay so this one is sneaky: for each directory given after this option, she follows subdirectories encountered within. (note the:at the end of the option, bestie โ it MATTERS. there's a whole Examples section below explaining it, don't worry ๐ฅฐ)-s,--symlinksโ follow symlinked directories. yes girl, chase them.-H,--hardlinksโ normally, when two or more files point to the same disk area, she treats them as non-duplicates. this option changes that behavior. ๐ฆ-G,--minsize=SIZEโ only consider files greater than or equal toSIZEin bytes. tiny files, you are dismissed. ๐-L,--maxsize=SIZEโ only consider files less than or equal toSIZEin bytes. big files, also dismissed. girlboss with boundaries.-c,--cacheโ speeds up file comparisons by keeping track of their signatures in a database. you can pass extra parameters with one or more cache parameters (the ones listed right below, mwah). โ ๏ธ please note: this option may not be available on some systems. check before you commit, bestie.-x cache.OPTIONโ supply an optional cache parameter, whereOPTIONis one of the keywords below, and you can stack multiple options by passing successive-xarguments:readonlyโ read but do not update file signaturespruneโ look through entire cache and delete orphaned entriesclearโ clear all entries from cachevacuumโ reduce size of DB file, if possible
The options prune, clear, and vacuum may be used without supplying a DIRECTORY argument, and they'll take effect even if readonly is also specified. the order of operations is always: clear, prune, update signatures (unless readonly), and vacuum. periodt. ๐
-n,--noemptyโ exclude zero-length files from consideration. sorry empty files, not today. ๐-A,--nohiddenโ exclude hidden files from consideration. if it's hiding, we don't see it. ๐โจ-f,--omitfirstโ omit the first file in each set of matches.-1,--samelineโ list each set of matches on a single line.-S,--sizeโ show size of duplicate files.-t,--timeโ show modification time of duplicate files.-m,--summarizeโ summarize duplicate file information.-M,--quicksummaryโ summarize dupe info quickly, skipping the slower byte-for-byte match confirmation. speed. ๐โโ๏ธ-q,--quietโ hide the progress indicator. shhh. ๐คซ-d,--deleteโ prompts the user for files to preserve, and deletes all the others. โ ๏ธ see the CAVEATS section below, this one is not a joke.-D,--deferconfirmationโ in interactive mode, defers the byte-for-byte confirmation of duplicates until just before file deletion. like, right before. ๐-P,--plainโ with--delete, uses a line-based prompt (like the older versions offdupes) instead of the new screen-mode interface. and on installations where the screen-mode interface isn't supported,fdupeswill just default to a line-based prompt anyway. no drama. ๐-N,--nopromptโ when used together with--delete, preserves the first file in each set of duplicates and deletes the others, without ever prompting the user. bold. fearless. slightly terrifying.-I,--immediateโ deletes duplicates as they are encountered, without grouping into sets. this implies--noprompt. ๐ฅ-p,--permissionsโ don't consider files with different owner/group or permission bits as duplicates. different permissions = different vibes = not the same file, bestie. ๐-o,--order=WORDโ orders files according toWORD:timeโ sort by modification timectimeโ sort by status change timenameโ sort by filename
-i,--reverseโ reverse order while sorting. flip it. ๐-l,--log=LOGFILEโ logs file deletion choices toLOGFILE.-v,--versionโ displaysfdupesversion.-h,--helpโ displays help.
๐ NOTES ๐
Unless -1 or --sameline is specified, duplicate files get listed together in groups, each file displayed on a separate line. and then the groups are separated from each other by blank lines. so organized. so aesthetic. ๐ธ
When -1 or --sameline is specified, spaces and backslash characters (\) appearing in a filename are preceded by a backslash character. she's escaping things, it's a whole thing, iykyk. โจ
๐ EXAMPLES ๐
fdupes a --recurse: b
Will follow subdirectories under b, but not those under a. see?? the colon matters. told you. ๐ค
fdupes a --recurse b
Will follow subdirectories under both a and b. slay. ๐
๐จ CAVEATS ๐จ
When using-dor--delete, care should be taken to insure against accidental data loss. fr fr. this is the serious one. ๐ญ
When used together with options -s or --symlink, a user could accidentally preserve a symlink while deleting the file it points to. ๐ฌ
Furthermore, when specifying a particular directory more than once, all files within that directory will be listed as their own duplicates โ leading to data loss should a user preserve a file without its "duplicate" (which is... the file itself!). not her being her own twin ๐
๐ AUTHOR ๐
Adrian Lopez <adrianlopezroche@gmail.com> โ thank you for the icon, we are obsessed ๐ซถ
okay bestie that's the whole page, every flag, every caveat, every little colon, all of it. ๐ the footer on this one just says FDUPES(1) again and that it's from the General Commands Manual, so likeโฆ we've come full circle, and honestly? iconic. โจ๐ธ๐
๐ฆ where this page comes from
- alpine 3.24: fdupes-doc 2.4.0-r0 ยท MIT
- epel 10: fdupes 1:2.4.0-1.el10_1 ยท MIT
- epel 9: fdupes 1:2.4.0-1.el9 ยท MIT
- fedora 43: fdupes 1:2.4.0-2.fc43 ยท MIT
- fedora 44: fdupes 1:2.4.0-3.fc44 ยท MIT
- nixos 26.05: fdupes 2.4.0
- nixpkgs unstable: fdupes 2.4.0
- ubuntu resolute: fdupes 1:2.4.0-1 ยท MIT
- ubuntu stonking: fdupes 1:2.4.0-1 ยท MIT
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms