免费重复文件清理工具 Czkawka:一次扫描,把占空间的重复文件翻出来
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
磁盘说满就满,可那些重复的照片、视频藏在层层目录里,手动翻既慢又容易删错。Czkawka 是一个免费开源的重复文件清理工具,Rust 编写,Windows、macOS、Linux、Android 都有图形界面,扫描全程在本地离线完成,不联网、不收集数据、不带广告。
Czkawka 能替你干哪些活
14 种扫描工具打包在一个程序里,磁盘上的多数垃圾都有对应入口:
| 你的情况 | 对应工具 |
|---|---|
| 内容完全相同的文件 | Duplicate Files,默认按内容哈希(Hash,默认算法 Blake3)比对 |
| 加过水印、裁剪过、反复压缩的"撞脸"照片 | Similar Images,用感知哈希(perceptual hash,按画面内容生成的"视觉指纹") |
| 画面雷同或只换了码率的视频 | Similar Videos,抽帧比对画面,也可只比声音,需另装 ffmpeg |
| 同一首歌存了好几个版本 | Same Music,按标签或音频内容比对 |
| 空文件夹、空文件、临时文件、损坏文件、失效符号链接 | Empty Folders、Empty Files、Temporary Files、Broken Files、Invalid Symlinks |
| 顺手要处理的杂项 | Big Files找最大的文件、Bad Extensions抓扩展名和内容对不上的文件、Exif Remover清照片定位信息、Video Optimizer裁黑边并转码 |
放心把磁盘交给它的三点理由:
- 完全离线:依赖清单里找不到任何网络、统计类库,没有更新检查和遥测;
- Rust 编写,几乎不含 unsafe(不安全)代码,多线程并行扫描,内存占用小;
- 扫描带缓存,哈希算过一次下次直接复用,同一批目录第二次扫描快得多。
下载安装并跑通第一次重复文件扫描
安装是最短路径:从官方发布页下载新界面Krokiet的单个自包含二进制,没有安装器,不挑运行时,Windows 10/11、macOS(Intel 与 Apple Silicon)、Ubuntu 22.04+ 都有对应版本。
平台差异很小,三条列完:
- Windows:双击 exe 直接运行;
- macOS:首次打开提示"无法验证开发者",右键文件选"打开"即可;
- macOS / Linux:下载的二进制默认没有执行权限,前半句赋权、后半句启动:
chmod +x mac_krokiet_arm64 && ./mac_krokiet_arm64唯一的前置条件:想用相似视频才需要先装 ffmpeg(以 Ubuntu/Debian 为例):
sudo apt install ffmpeg其余功能开箱即用。
第一次扫描四下跑通:左侧选Duplicate Files→ 把要扫的目录加进Included paths(系统目录、备份、网盘目录放进Excluded paths,回收站在默认排除列表里)→ 点Scan,默认Hash模式按文件内容算哈希 → 结果按组出来。打开Select弹窗选"保留最新、选中其余",先用Trash移进回收站,确认几组没问题再清空。注意它默认跳过 8 KB 以下的文件,结果不会被一堆小图标、缩略图的重复淹没。
这几个场景最常用
重复文件:给原件打参考标记— 不想动的备份目录,在Included paths里勾Ref,它就变成"只参考":只参与比对,删除、移动任何操作都不会碰它。
相似图片:阈值调一调— 照片库里有几百张"几乎一样"的截图和裁剪图,选Similar Images,默认阈值Max difference为 10(范围 0–40),误判多就调低、漏得多就调高;勾上Geometric invariance,翻转、旋转过的副本也能认出来。每组留分辨率最高的那张即可。
手机上的 Cedinia 📱— Android 装 Cedinia,把相册、下载这类目录加进来直接扫,清理全程在设备上完成;注意 Android 上不提供视频类工具(缺 ffmpeg)。
用 czkawka_cli 把清理挂进定时任务
命令行与界面共用同一套扫描逻辑,每个子命令都带--help可查全部参数。
先跑一条演练,只打印会删什么、不动手:
czkawka_cli dup -d ~/Documents -E DEFAULT -Q -D AEN-D AEN表示"保留最新、删除其余",-E DEFAULT套用与界面相同的排除规则(命令行默认不带,要自己加)。确认无误后去掉 -Q 再加 -y,删掉的文件进回收站而不是直接消失。
czkawka_cli empty-folders -d ~/Documents -f empty.txt把找到的空文件夹写进文本文件而不是打印到屏幕,方便脚本接着处理。
czkawka_cli big -d ~ -n 20列出主目录下最大的 20 个文件,磁盘满了找元凶时很好用。挂计划任务时看退出码就行:11 表示"有发现",0 表示"干净"。
动手前的四个疑问 ⚠️
为什么别用名字或大小匹配?同名不同内容会被归进一组,容易误删;内容Hash最稳,也是默认值。
删错了怎么办?先走回收站(GUI 的Trash、命令行的-y),确认结果靠谱再清空;拿不准的目录先用-Q演练一遍。
硬链接为什么建不了?硬链接(一个文件挂多个名字、只占一份空间)只在同一磁盘内有效,不同盘的文件会直接报错,跨盘请改用移动。
小文件的重复为什么找不到?重复工具默认只查 8 KB 以上的文件,真需要扫就把设置里的"最小文件大小"调低。
一句话选型
相比 DupeGuru 这类更常见的 Python 系工具(主打重复文件),Czkawka 是 Rust 多线程,还多了相似视频抽帧、音乐内容比对这些场景,能清的东西更多。细节看官方文档与常见问题,全部扫描逻辑在 czkawka_core/。第一次用,不妨从下载文件夹开始:量小,删错了也在回收站,放心之后再逐步扩大扫描范围。
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考