Everything version : 1.5.0.1418b (x64)
Hi David, and users!
I am trying to use a reference folder as a "sanctuary" to find and delete its exact binary duplicates located on other drives/folders, without affecting duplicates that have no relation to this reference folder.
I'm seeing unexpected behavior combining dupe-from: with a path exclusion.
Test folder structure:
D:\test_everything\
├── mesphotos\ (contains file A ×3 identical, file B ×1)
├── ailleurs1\ (contains B copy, file C, file F)
└── ailleurs2\ (contains B copy, file C copy, file F copy)
Query 1 — works correctly:
"D:\test_everything\" pic: dupe:size;sha256 dupe-from:"D:\test_everything\mesphotos\"
→ Returns 6 results (3× A, 3× B) — correct, since A and B both have a copy inside mesphotos.
Query 2 — combined with exclusion, returns 0 results:
"D:\test_everything\" pic: dupe:size;sha256 dupe-from:"D:\test_everything\mesphotos\" !path:"D:\test_everything\mesphotos\"
Also tried !"D:\test_everything\mesphotos\" (without path:) — same empty result.
Expected result: the 2 B-file copies located outside mesphotos (in ailleurs1 and ailleurs2), since B has a reference copy inside mesphotos and both external copies should remain after excluding mesphotos itself from the result set.
Actual result: 0 matches.
My guess is the exclusion filter is applied before/during the dupe-from: evaluation rather than after, so once mesphotos files are excluded from the working set, dupe-from: can no longer find any reference match there. But I may be wrong on the mechanism — happy to test any query variant you'd suggest.
Everything version: [1.5.0.1418b (x64)]
Thanks!
dupe-from: returns empty results when combined with !path: exclusion
-
charlesandre
- Posts: 3
- Joined: Thu Aug 06, 2026 11:29 am
-
therube
- Posts: 5804
- Joined: Thu Sep 03, 2009 6:48 pm
Re: dupe-from: returns empty results when combined with !path: exclusion
Don't think I've set up the tree quite as you've described, but...
all same named files are identical
directory a1 & a2 are identical, as are the a*copy* files
Looks to work,
with b c & f being returned, all located in directories a1 & a2.
.
all same named files are identical
directory a1 & a2 are identical, as are the a*copy* files
Code: Select all
C\dupefrom\
+---a1
| b
| c
| f
|
+---a2
| b
| c
| f
|
\---mes
a
a - Copy
a - Copy (2)
b
dupe:size;sha256 dupe-from:c:\out\dupefrom c:/out/dupefrom !c:\out\dupefrom\mes\ file:with b c & f being returned, all located in directories a1 & a2.
.
You do not have the required permissions to view the files attached to this post.
-
charlesandre
- Posts: 3
- Joined: Thu Aug 06, 2026 11:29 am
Re: dupe-from: returns empty results when combined with !path: exclusion
Thanks for testing! I think there's still a scope difference between our two commands though.
Your dupe-from: points to the whole root c:\out\dupefrom (which contains a1, a2, AND mes) — that's why c and f get returned even though they have no copy inside mes at all. That's actually the exact leak I'm trying to avoid.
Using your own tree, could you try dupe-from: restricted only to the mes subfolder, combined with excluding that same subfolder:
dupe:size;sha256 dupe-from:"c:\out\dupefrom\mes\" !"c:\out\dupefrom\mes\"
Expected: only b (which has a copy in mes) should be returned, from a1 and a2. c and f should NOT appear, since they have no reference copy in mes.
On my end, this narrower combination returns 0 results instead — even though dupe-from:"...\mes\" alone (without the exclusion) correctly returns everything sharing a hash with mes. It seems to be specifically the narrow scope + exclusion of that same scope combination that breaks.
Your dupe-from: points to the whole root c:\out\dupefrom (which contains a1, a2, AND mes) — that's why c and f get returned even though they have no copy inside mes at all. That's actually the exact leak I'm trying to avoid.
Using your own tree, could you try dupe-from: restricted only to the mes subfolder, combined with excluding that same subfolder:
dupe:size;sha256 dupe-from:"c:\out\dupefrom\mes\" !"c:\out\dupefrom\mes\"
Expected: only b (which has a copy in mes) should be returned, from a1 and a2. c and f should NOT appear, since they have no reference copy in mes.
On my end, this narrower combination returns 0 results instead — even though dupe-from:"...\mes\" alone (without the exclusion) correctly returns everything sharing a hash with mes. It seems to be specifically the narrow scope + exclusion of that same scope combination that breaks.
-
therube
- Posts: 5804
- Joined: Thu Sep 03, 2009 6:48 pm
Re: dupe-from: returns empty results when combined with !path: exclusion
dupe:size;sha256 dupe-from:"c:\out\dupefrom\mes\" !"c:\out\dupefrom\mes\"0 results.
If I,
dupe:size;sha256 dupe-from:c:\out\dupefrom\mes\ !mesthen I get b in a1 & a2 (& also /mes/)
along with all the a's in /mes/
I'm not really putting my head around this, at this point in time... it's just a mes
-
charlesandre
- Posts: 3
- Joined: Thu Aug 06, 2026 11:29 am
Re: dupe-from: returns empty results when combined with !path: exclusion
It seems it's could be a bug ?
Thanks for confirming — I think we can rule out a syntax mistake on my end at this point. Two different exclusion phrasings (!"full\path\" and !mes) both produce incorrect results (0 results vs. an incomplete/wrong result where the reference folder still shows up despite being excluded).
This looks like a genuine bug in how dupe-from: interacts with exclusion filters, rather than something fixable by adjusting the query. Would it make sense to flag this directly to David for a closer look, or is there a dedicated bug-report process/subforum I should use instead?
In the meantime I'll fall back to another dedup tool for this specific step. Thanks for digging into this with me!
Thanks for confirming — I think we can rule out a syntax mistake on my end at this point. Two different exclusion phrasings (!"full\path\" and !mes) both produce incorrect results (0 results vs. an incomplete/wrong result where the reference folder still shows up despite being excluded).
This looks like a genuine bug in how dupe-from: interacts with exclusion filters, rather than something fixable by adjusting the query. Would it make sense to flag this directly to David for a closer look, or is there a dedicated bug-report process/subforum I should use instead?
In the meantime I'll fall back to another dedup tool for this specific step. Thanks for digging into this with me!
-
void
- Developer
- Posts: 20194
- Joined: Fri Oct 16, 2009 11:31 pm
Re: dupe-from: returns empty results when combined with !path: exclusion
0 results is expected.Query 2 — combined with exclusion, returns 0 results:
"D:\test_everything\" pic: dupe:size;sha256 dupe-from:"D:\test_everything\mesphotos\" !path:"D:\test_everything\mesphotos\"
dupe:So excluding the mesphotos folder and then requiring at least one item from the mesphotos folder will fail to find any results.
Including a \ in your search automatically applies path:, so path: is not needed here.Also tried !"D:\test_everything\mesphotos\" (without path:) — same empty result.
!path:"D:\test_everything\mesphotos\"is the same as:
!"D:\test_everything\mesphotos\"You'll have to do this in two passes:Expected result: the 2 B-file copies located outside mesphotos (in ailleurs1 and ailleurs2), since B has a reference copy inside mesphotos and both external copies should remain after excluding mesphotos itself from the result set.
First search for:
"D:\test_everything\" pic: dupe:size;sha256 dupe-from:"D:\test_everything\mesphotos\"Select all Files (Ctrl + A)
Copy filenames (Ctrl + Shift + C)
Search for:
filelist1:Right click the filelist1: text in the search box and click Edit File List slot....
Paste your filenames and click OK.
Change the search to:
filelist1: !path:"D:\test_everything\mesphotos\"