Czkawka 重复文件清理指南:14 类扫描工具找回上百 GB 空间
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
资料盘弹出"空间不足"时,重复文件、相似照片和空文件夹往往是元凶。Czkawka 是一款免费开源的重复文件清理工具,Rust 编写,扫描全程在本地完成,不联网、无广告、无遥测,Windows、macOS、Linux 都能用,手机 Android 端也有实验版。
14 类扫描工具一次看全
Czkawka 由 czkawka_core 库统一提供全部扫描逻辑,Krokiet 桌面图形界面、czkawka_cli 命令行、Cedinia 安卓版和老版 GTK 界面只是不同入口。工具共 14 类:重复文件、相似图片、相似视频、音乐去重、空文件夹、空文件、临时文件、损坏文件、无效符号链接、错误扩展名、坏文件名、大文件、EXIF 清理、视频优化。结果都按组展示,支持批量删除、移动或建硬链接。
重复文件:逐字节内容比对
原理:默认用 Blake3 哈希对文件内容算指纹,相同内容归一组,与文件名、大小无关。这是最稳的匹配方式,同名不同内容的文件不会被误伤。
相似图片:感知哈希抓"长得像"
感知哈希(perceptual hash)把图片压成一段短的"视觉指纹",相似度越高指纹越接近。加过水印、裁剪、旋转、反复 JPEG 压缩的副本都能被归进同一组;默认阈值 max difference 为 10,误判多就调低到 4~5,漏报多再调高;勾上 Geometric invariance 还能抓镜像、翻转、旋转的副本。每组留分辨率最高的那张即可。
相似视频:抽帧比对,也可以只比声音
视频没法逐字节比,Czkawka 从每段视频里抽帧再对比画面(基于 similario_core 视觉匹配引擎,12.0 起支持可配置窗口数、时长容差与子片段检测);也可以切到音频指纹模式,只比声音不比画面。该功能依赖 ffmpeg。
音乐去重:比标签,也可以比音频内容
两种方式:按标签(艺术家、专辑、曲名)比对,或直接比对音频内容,同一首歌的多个下载版本都能归到一起。
敢把删除权交给它的理由
- 完全离线:依赖清单 Cargo.lock 里没有任何网络、HTTP 或统计类库,更新检查、遥测、广告在代码层面就不存在;
- Rust 多线程:扫描线程并行跑,默认用满全部 CPU 线程(
-T 0),内存占用小; - 哈希缓存:扫描结果会缓存哈希、大小等元数据(不含文件内容),二次扫同一批目录直接命中缓存,速度明显更快;
- 回收站优先:删除可先移入回收站,确认后再清空,误删可找回。
Krokiet 安装步骤 📦
Krokiet 是单个自包含可执行文件,不用安装器、不用装运行时,Win/mac/Linux 三端体验一致。从官方发布页下载对应系统的预编译版即可:Windows 10+、macOS 10.15+、Ubuntu 22.04+。
Linux / macOS 先赋予执行权限再运行(Windows 版直接双击 exe):
chmod +x mac_krokiet_arm64 && ./mac_krokiet_arm64macOS 首次打开如提示"无法验证开发者",右键文件选"打开"再确认即可。
唯一前置条件:想用"相似视频"需先装 ffmpeg。Ubuntu/Debian 执行sudo apt install ffmpeg;macOS 用 brew install ffmpeg;Windows 把 ffmpeg.exe 放到程序同目录。
首次完整扫描流程
- 左侧面板选Duplicate Files;
- 要扫的目录放进Included Paths,系统目录、备份目录、网络磁盘放进Excluded Paths(回收站已在默认排除列表);
- 备份目录旁勾上Ref复选框:它只参与比对、永不被删;
- 点扫描——默认就是内容哈希模式,逐字节比对,同名不同内容不归一组;
- 结果按组展示,打开Select弹窗选"保留最新、选中其余",先移入回收站,确认无误再清空。
第二次扫同一批目录会快很多,哈希都在缓存里。
CLI 一行命令清重复
czkawka_cli 与界面共用同一套扫描引擎,子命令有 dup、empty-folders、big、temp、image、video、music、broken、ext 等。常用的一行命令:
czkawka_cli dup -d ~/Documents -D AEN -Q -f dup.txt-D AEN表示保留最新、其余待删,-Q是演练模式:只打印将执行的操作、不动手。确认输出没问题后,去掉-Q加上-y,删除动作改走回收站。
czkawka_cli empty-folders -d ~/Documents -f empty.txt找出空文件夹并写入文本文件而不是打印到屏幕,方便脚本继续处理。
czkawka_cli big -d ~ -n 20列出主目录下最大的 20 个文件。每个子命令都支持--help查看全部参数;脚本接法:退出码 11 表示有发现,0 表示干净,方便在计划任务里写 if 判断。
删文件前先看这四个坑 ⚠️
- 匹配方式比速度重要:按名称或大小匹配会把同名不同内容的文件归到一组,容易误删;内容哈希最稳妥;
- CLI 不套用界面排除规则:命令行里要自己加,
-E DEFAULT即界面同款默认排除项,$TRASH单独排除回收站路径; - 硬链接只在同一磁盘有效:跨盘会直接报错,跨盘场景改用移动;
- 小文件默认不查:界面与 CLI 都有最小文件大小阈值(CLI dup 默认 8KB),想查小文件重复就去设置里调低。
Czkawka 与 DupeGuru 对比
| 对比维度 | Czkawka(Krokiet) | DupeGuru |
|---|---|---|
| 实现语言 | Rust,多线程扫描 | Python |
| 检测工具数量 | 14 类,含相似视频、音乐内容比对 | 重复文件为主,另有相似图片、音乐标签 |
| 相似视频 | 支持(抽帧 + 音频指纹,依赖 ffmpeg) | 不支持 |
| 联网行为 | 完全离线,无更新检查、无遥测 | 离线 |
| 维护状态 | 活跃开发,最新大版本 12.0(老 GTK 界面 12.0 后停止新功能) | 更新缓慢 |
完整文档:instructions/Instruction.md、instructions/FAQ.md;14 类扫描的核心实现在 czkawka_core/src/tools/,按文件名即可对照。建议先拿下载目录试扫一遍,删完确认没问题,再把整块资料盘加进来。
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考