Czkawka 重复文件清理完整指南:如何用免费离线工具清出几十 GB 重复空间
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
看到"磁盘已满"的提示时,先别急着换更大的盘。同一张照片、同一个安装包、同一份导出文件往往在磁盘上存了两三份,这类浪费最容易回收。Czkawka 就是一个免费开源的重复文件清理工具,用 Rust 编写,扫描全程在本机完成。
它现在的桌面主界面叫 Krokiet,另外还带命令行版和安卓版。下面从装好、跑通第一次清理,讲到进阶功能和定时任务,全部用得上。
它到底能干什么
一句话定位:一个核心库 czkawka_core 负责全部扫描逻辑,上面接 Krokiet 桌面界面、czkawka_cli 命令行、Cedinia 安卓版(安卓上没有 ffmpeg,视频类工具不可用)和老 GTK 界面(12.0 是最后一个版本,不再出新功能)。
14 种扫描覆盖大部分磁盘垃圾:
- 重复文件:按内容逐字节比对,找出完全相同的文件
- 相似图片:加了水印、裁过图、分辨率不同也能认出
- 相似视频:抽帧对比画面,找出视觉上相似的视频
- 音乐去重:按标签或音频内容比对
- 空文件夹 / 空文件:一次性扫出来
- 临时文件:.tmp、.bak、.crdownload 之类
- 损坏文件:图片、音频、压缩包等打不开的文件
- 无效符号链接:指向已不存在的目标
- 错误扩展名:比如 .jpg 其实是 zip
- 坏文件名:含 emoji、首尾空格、非常规字符
- 大文件:列出指定目录下最大的 N 个文件
- EXIF 清理:移除图片里的 GPS 等元数据
- 视频优化:裁掉黑边、转成更省空间的编码
为什么敢把数据交给它
担心"删文件"工具偷偷传数据?Czkawka 每条都能自己查证:
- 完全不联网。翻一遍依赖清单 Cargo.lock,里面没有任何网络、统计类库,没有更新检查、没有遥测,代码里根本不存在联网路径;
- 内存安全。Rust 编写,几乎 100% 无 unsafe 代码,多线程并行扫描,内存占用很小;
- 缓存只存元数据。哈希缓存里只有哈希、大小这些信息,不存文件内容,所以第二次扫同一批目录会快很多。
删除操作也都可控:可以先把文件移入回收站,确认无误再清空。
安装步骤:下载一个自包含二进制
- 从官方发布页下载对应系统的预编译版(Windows 10+、macOS 10.15+、Ubuntu 22.04+)。单个自包含可执行文件,不用装运行时,也不用安装器;
- Linux 或 macOS 上先给执行权限再运行:
chmod +x mac_krokiet_arm64 && ./mac_krokiet_arm64前半句赋予执行权限,后半句直接启动。Windows 版直接双击 exe 即可。
- macOS 首次打开若提示"无法验证开发者",右键文件选"打开"再确认一次就行。
唯一的前置条件:相似视频功能需要 ffmpeg。Ubuntu/Debian 执行sudo apt install ffmpeg;macOS 用brew install ffmpeg;Windows 把 ffmpeg.exe 放进 PATH 或程序同目录。其余功能开箱即用。
第一次清理实操:重复文件全流程
以最常见的"找重复文件"为例,六个点击跑通:
- 选工具:Krokiet 左侧面板点 "Duplicate Files"。
- 加目录:要扫的位置放进 Included Paths;系统目录、备份目录、网络磁盘放进 Excluded Paths。排除项里有 $TRASH 预设,覆盖常见回收站路径,不用手动加。
- 设过滤:默认跳过 16KB 以下的文件,避免结果被一堆小文件淹没。
- 保护原件:把备份目录标记为参考目录(Ref),它只参与比对,任何操作都不会删它。
- 点扫描:默认就是内容哈希模式(BLAKE3 哈希),逐字节比对内容,同名但内容不同的文件不会被归到一组。
- 处理结果:结果按组展示,用 Select 弹窗选"保留最新、选中其余",先移入回收站,确认无误再清空。
第二次扫同一批目录会快很多,因为哈希全在缓存里。
基础用法之外:相似图片、相似视频与音乐去重
相似图片:加过水印、裁过图也算重复
原理是感知哈希:把图片压成一段短的"视觉指纹",长得越像指纹越接近。不同分辨率、水印、裁剪、JPEG 反复压缩都能归进同一组。默认相似度阈值是 10,误判多就调小(4~5),漏报多再调大;勾上 Geometric invariance 后,镜像、翻转、旋转的副本也能抓到。每组留分辨率最高的一张即可。
相似视频:靠抽帧对比
视频没法逐字节比,Czkawka 从每段视频抽帧再比对画面,也可以切到音频指纹模式只比声音。需要装好 ffmpeg。
音乐去重与各类小垃圾
音乐支持标签比对(艺术家、专辑、曲名)和音频内容比对两种模式。空文件夹、空文件、临时文件、损坏文件、无效符号链接、错误扩展名这些小工具单个都不大,攒起来经常有好几个 GB,值得顺手跑一遍。
命令行与自动化 📦
czkawka_cli 与界面共用全部扫描逻辑,子命令有 dup、empty-folders、big、temp、image、video、music、broken、ext 等。
czkawka_cli dup -d ~/Documents -D AEN -Q-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 判断;加 -W 可以强制返回 0,适合"发现也算正常"的场景。
上手前绕开这几个坑 ⚠️
- 匹配方式比速度重要。按名字或大小匹配会把同名不同内容的文件归到一组,容易误删;内容哈希(默认)最稳妥。
- 先排除再扫描。系统目录、备份目录、网络磁盘先丢进排除列表,又快又安全。注意 CLI 不会自动套用界面的默认排除规则,要自己加。
- 硬链接不跨盘。硬链接是一个文件挂多个名字、只占一份空间,只在同一磁盘内有效,跨盘会直接报错;跨盘场景请改用移动。
- 找不到小文件的重复?默认跳过 16KB 以下的文件,需要的话去设置里调低"最小文件大小"。
Czkawka 和 DupeGuru 差在哪
| 对比项 | Czkawka(Krokiet) | DupeGuru |
|---|---|---|
| 实现语言 | Rust,多线程扫描 | Python |
| 功能覆盖 | 14 类扫描,含相似视频与音乐内容比对 | 以重复文件为主,另有相似图片、音乐标签 |
| 视频比对 | 支持(抽帧 + 音频指纹,需装 ffmpeg) | 不支持 |
| 联网行为 | 完全离线,无更新检查与遥测 | 离线 |
| 维护状态 | 活跃开发,12.0 为最新大版本 | 更新缓慢 |
建议先拿下载目录清一遍重复文件,确认删得放心,再把整个资料盘加进来。更多参数与原理见官方文档 instructions/Instruction.md 和 instructions/Instruction_CLI.md,核心扫描逻辑源码在 czkawka_core/。
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考