Czkawka 重复文件清理完整指南:从安装到清出几十 GB 只需 10 分钟
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
重复文件、相似照片、空文件夹散落在各个磁盘里,手工找既慢又不放心。Czkawka 是一个免费、开源、用 Rust 写的重复文件清理工具,扫描全程在本机完成。它由一个核心引擎(czkawka_core)加多个入口组成,桌面端主推 Krokiet 图形界面,另有 CLI、安卓版 Cedinia 和老 GTK 界面可选。下面按"装好它 → 跑通第一次扫描 → 调参扩展场景 → 写进脚本"的顺序走一遍,新手照做即可。
1. 它能解决什么问题
一次扫描能同时覆盖 14 类检查,结果按"组"展示,每组可以批量删除、移动或建硬链接:
- 重复文件:默认按内容哈希比对(不看文件名,直接比对文件里的字节),同名不同内容不会误判
- 相似图片 / 相似视频:感知哈希(perceptual hash,把画面压成一段短的"视觉指纹")比对,加过水印、裁过图、换过分辨率也能归到一组
- 音乐去重:支持按标签(艺术家、专辑、曲名)或按音频内容两种模式
- 小垃圾合集:空文件夹、空文件、临时文件、损坏文件、无效符号链接、扩展名与内容不符、坏文件名、大文件
- 顺手维护:EXIF 隐私信息清理、视频转码/去黑边优化
结果不是散落的文件列表,而是分组视图:同一组里留一个、处理其余,这是它和普通"找文件"工具最大的区别。
2. 装好它:三步跑起来
桌面端只推荐装 Krokiet——单个自包含可执行文件,不用装运行时、不用安装器,Windows / macOS / Linux 三端行为一致。
- 从官方发布页下载对应系统的预编译版(支持 Windows 10+、macOS 10.15+、Ubuntu 22.04+);
- Linux 或 macOS 上先给执行权限再启动,Windows 直接双击 exe:
chmod +x mac_krokiet_arm64 && ./mac_krokiet_arm64- macOS 首次打开若提示"无法验证开发者",右键文件选"打开"并确认即可。
唯一的硬前置条件:"相似视频"功能需要系统里有 ffmpeg,其余功能开箱即用。Ubuntu/Debian 用sudo apt install ffmpeg,macOS 用brew install ffmpeg,Windows 把 ffmpeg.exe 放到程序同目录。
手机上可以试实验版 Cedinia,直接扫相册和下载目录;老 GTK 界面 12.0 已停止新功能开发,新装不必考虑它。
3. 完成第一次清理:从扫描到安全删除
以最常见的"重复文件"为例,六步走完,约 5 分钟:
- 选工具:左侧面板点 Duplicate Files;
- 加目录:要扫的位置放进 Included Paths;系统目录、备份盘、网络磁盘放进 Excluded Paths。回收站已在默认排除列表里,不用手动加;
- 调文件门槛:默认只扫 16KB(16384 字节)以上的文件,避免结果被图标、配置文件之类的小文件重复刷屏。找不到小文件重复时再回设置里调低"最小文件大小";
- 保护原件:备份目录旁勾上 Ref 复选框后,该目录只参与比对、任何操作都不会动它;
- 点扫描:默认就是内容哈希模式(默认 Blake3 哈希),逐字节比对内容;
- 安全处理:打开 Select 弹窗选"保留最新、选中其余",先移入回收站,确认无误再清空。
第二次扫同一批目录会快很多——哈希结果有本地缓存,直接命中,缓存只存哈希、大小这类元数据,不存文件内容。
4. 其他高频扫描:怎么开、参数怎么调
相似图片怎么扫
原理:把图片压成视觉指纹,指纹越接近说明画面越像。分辨率不同、加了水印、裁剪、旋转、JPEG 反复压缩,都能归进同一组。两个关键参数:
- max difference(最大差异阈值):默认 10。误判多就调到 4~5,漏报多再调高;
- Geometric invariance:勾上后镜像、翻转的副本也能抓到(提供 mirror-flip、mirror-flip-rotate90 两档)。
处理时每组挑分辨率最高的一张留下即可。
相似视频怎么扫
视频无法逐字节比对,工具从每段视频里抽帧再比对画面;也可以切到音频指纹模式,只比声音不比画面。需要预装 ffmpeg(见第 2 节)。抽帧时长、画面窗口数等都有允许范围,参数解析见 czkawka_cli/src/parsers.rs。
音乐去重
两种模式按需切换:标签模式比艺术家/专辑/曲名,适合同一首歌存了多份;内容模式比音频波形,适合连标签都被清掉的录音。内容模式的最大差异阈值上限是 10。
空文件夹、空文件、临时文件、损坏文件、无效符号链接、"扩展名和内容对不上"(比如 .jpg 其实是 zip)这几个小工具单个收益不大,攒起来通常也有好几个 GB,顺手各跑一遍。
5. 命令行与自动化:给脚本党的关键参数
czkawka_cli 与界面共用全部扫描逻辑。子命令包括dup、empty-folders、big、empty、temp、image、video、music、broken、ext、names、symlinks、exif、optimize,每个都带--help。
czkawka_cli dup -d ~/Documents -D AEN -Q-D AEN表示"保留最新、删除其余"(还支持 AEO 留最旧、HARD 建硬链接等);-Q是演练模式:只打印会删什么,不动手。确认后去掉-Q再加-y,删掉的文件进回收站。
czkawka_cli empty-folders -d ~/Documents -f empty.txt结果写入文本文件而不是打印到屏幕,方便脚本后续处理。
czkawka_cli big -d ~ -n 20列出主目录下最大的 20 个文件。
自动化最关键的一点:退出码 11 表示"有发现",0 表示"干净",可以直接在计划任务里接if判断。另外注意 CLI 不会自动套用界面那套默认排除规则,需要时用-E DEFAULT显式启用。
6. 常见问题
它会联网吗?
不会。可以亲自翻依赖清单(Cargo.lock)验证:没有任何网络、HTTP、统计类库,没有更新检查、没有遥测、没有广告,代码里不存在联网的路径。
删错了怎么办?怎么避免误删?
界面里删除先进回收站,清空前还有反悔机会。更关键的是匹配方式:按名字或大小比对会把同名不同内容的文件归到一组,容易误伤;内容哈希(默认)最稳妥。另外先排除再扫描——系统目录、备份目录、网络磁盘先排除,又快又安全。
为什么跨盘建硬链接失败?
硬链接(一个文件挂多个名字,只占一份空间)只在同一磁盘内有效,跨盘会直接报错。跨盘场景请改用移动。
为什么第二次扫描快很多?
哈希缓存默认开启,重扫同一批目录直接命中。缓存只存哈希、大小等元数据,不存文件内容,删了也不影响源文件。
7. 收尾
Czkawka 就是"一个引擎、四个入口"的离线清理工具箱:装好 Krokiet,选目录、点扫描、按组处理,十分钟能清出几十 GB。
| 对比项 | Czkawka(Krokiet) | DupeGuru |
|---|---|---|
| 实现语言 | Rust,多线程并行扫描 | Python |
| 工具覆盖 | 14 类扫描,含相似视频、音乐内容比对 | 以重复文件为主 |
| 视频比对 | 支持(抽帧 + 音频指纹,需 ffmpeg) | 不支持 |
| 联网行为 | 完全离线 | 离线 |
| 维护状态 | 活跃开发,12.0 为最新大版本 | 更新缓慢 |
更多参数与原理看官方文档:instructions/Instruction.md、instructions/Instruction_CLI.md、instructions/FAQ.md;核心扫描逻辑在 czkawka_core/src/,桌面界面在 krokiet/。建议先拿下载目录清一遍,确认删得放心,再把整个资料盘加进来。
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考