# Duplicate File Finder

> 在瀏覽器裡找出資料夾中的重複檔案並刪掉多的那份：先按大小分組，同大小的才做串流 SHA-256，大資料夾也掃得快。不上傳、不安裝；刪掉的檔案不進資源回收筒，救不回來。

- URL: https://bytescope.dev/zh-Hant/duplicate-finder/
- Locale: zh-Hant · Also: [en](https://bytescope.dev/en/duplicate-finder.md) · [ja](https://bytescope.dev/ja/duplicate-finder.md)
- Runs: 資料夾是瀏覽器直接在你自己的電腦上開啟的。檔案在這裡被讀取來計算雜湊值，不會傳到任何地方——不上傳、不用帳號，伺服器上也不會留副本。
- Requires: Chrome, Edge or Opera on desktop (File System Access API): the tool changes files inside the folder you pick. Other browsers cannot write into a folder, so they get a support matrix instead of the tool.
- Updated: 2026-09-08

## What it does

指一個資料夾給它，它會把裡面的東西連同子資料夾全部走過一遍，找出 byte 對 byte 完全一樣的複本。跑得快的訣竅是拒絕做白工：檔案先按大小分組，整棵樹裡大小獨一無二的檔案不可能是任何東西的重複，所以它的內容連讀都不會被讀。只有大小相同的檔案才會被雜湊——用串流的 `SHA-256`，一塊一塊算，4 GB 的影片也不會整支坐進記憶體。一般的照片庫裡，大多數檔案從頭到尾沒被雜湊過；掃描的大宗其實是讀目錄清單。

### 怎樣才算重複

兩個檔案要 `SHA-256` 摘要相同，才會被回報成重複——實務上就是內容到最後一個 byte 都一樣。這是刻意收窄的定義。這個工具不找「幾乎一樣」的照片：同一張圖的兩種解析度、同一張圖的 JPEG 版和 PNG 版、差一秒的兩格連拍，都不會被抓出來。找那些要靠 perceptual hashing（感知雜湊），是另一種技術、另一種出錯方式（它用猜的），這一版沒有。這裡回報的每一筆都是精確一致——正因如此，照著機械化處理才安全。

### 決定留下哪一份

重複的檔案分組列出，圖片附縮圖，你看得到自己在對什麼做決定。每一組裡挑出要活下來的那份——手動挑，或用規則：留最舊的、留最新的，或留路徑最短的；最短路徑通常代表待在原位的那份，而不是埋在 `backup/backup2/misc` 深處的那份。動手之前，你會看到將被刪除的檔案的精確清單，在你按下確認之前，什麼都不會被碰。

### 刪掉就是刪掉

這件事要在按確認之前弄清楚，不是之後：在這裡刪掉的檔案不會進資源回收筒，也不會進垃圾桶。File System Access API 是直接移除，這個工具沒有辦法把它們變回來——救援軟體也許撈得回一些，但那是賭運氣，不是計畫。保護做在流程裡：只認精確一致、明確的檢視清單、每組的保留規則、再加一道確認。把清單讀完。那是最後一個能救你的步驟。

## Limits

Does not find similar-but-not-identical photos across different sizes or edits; it matches exact duplicates by content hash.

## FAQ

### 找重複的過程會上傳我的檔案嗎？

不會。走訪目錄、比大小、算 `SHA-256`、產生縮圖，全部都在你的瀏覽器裡進行——雜湊是把候選檔案一塊一塊餵進本機的 worker，byte 哪裡都不去。這一頁是背後沒有伺服器的靜態檔案，原理上連上傳的路徑都不存在；整趟掃描下來，Network 分頁一直是空的。這件事在這裡格外重要，因為你要整理重複的那個資料夾，往往就是什麼都放在裡面的那個。

### 它怎麼判斷兩個檔案一模一樣？

分兩關，而順序正是重點。先比大小，因為大小是免費的——目錄清單本來就附——而大小不同的檔案不可能一樣。只有大小相同的檔案，內容才會被讀出來算 `SHA-256`；同大小又同摘要，在任何實務意義上內容就是相同的。這個兩段式設計就是它又快又精確的原因：大多數檔案連被讀都沒被讀就出局了，而且沒有任何一筆重複是用猜的。

### 刪掉的檔案救得回來嗎？

救不回來。在這裡刪除的檔案不會被移到資源回收筒或垃圾桶——File System Access API 是直接刪除，這個工具裡沒有復原，作業系統平常那些地方也找不到它們。專門的救援軟體偶爾能撈回剛刪掉的資料，但那沒有任何保證。請把確認視窗當成最終決定看待，因為它就是：接受之前，把刪除清單讀完。

### 哪些瀏覽器可以用？

桌面版的 Chromium 系瀏覽器——Chrome、Edge，以及 Brave 這類衍生品。這份工作的兩頭都需要 File System Access API：挑資料夾並走訪它，以及刪掉你選定的複本。Firefox 和 Safari 沒有實作，所以在那些瀏覽器上，頁面會顯示誠實的支援說明，而不是一個做到一半做不完的工具。行動瀏覽器同樣因為這個原因不支援。

### 找得到「同一張照片的不同尺寸」這種相似圖嗎？

找不到——也不會假裝找得到。同一張照片輸出成兩種解析度，或同一張圖的 JPEG 版和 PNG 版，byte 不一樣，雜湊就不一樣，不會被回報。要找「看起來很像」的圖片得靠 perceptual hashing，那是在判斷相似度而不是同一性，兩個方向都可能出錯；這一版沒有收。只認精確一致的好處是，列出來的每一組都是板上釘釘——當下一步是刪除的時候，你要的正是這個。

## Related tools

- [Folder Size](https://bytescope.dev/zh-Hant/folder-size.md) — 用 treemap 看哪些資料夾把硬碟吃光，看完再回來這裡找重複的檔案。
- [Folder Compare](https://bytescope.dev/zh-Hant/folder-compare.md) — 先比大小，相同的再算 SHA-256，列出只在 A、只在 B、內容不同的路徑。
- [File Hash](https://bytescope.dev/zh-Hant/file-hash.md) — 自己算一個檔案的雜湊值——MD5、SHA-1、SHA-256、CRC32——再比對結果。
- [Bulk Rename](https://bytescope.dev/zh-Hant/bulk-rename.md) — 用一串規則重新命名資料夾裡的每個檔案，套用前先看預覽。
- [Extract Archive](https://bytescope.dev/zh-Hant/extract-archive.md) — 不用上傳就能解開 zip、7z、rar、tar 壓縮檔。
