Krokiet:免费快速的跨平台文件清理与去重软件使用指南
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
Krokiet 是 Czkawka 项目的新一代桌面界面,整套工具体系用 Rust 编写,专门解决"硬盘里堆了太多重复文件、空文件夹、临时文件和相似图片"这类磁盘清理问题。它完全离线运行、无广告、不收集任何使用数据,GUI 版本覆盖 Windows、macOS、Linux,另有命令行版和 Android 版(Cedinia)。内置 14 个扫描工具:重复文件、空文件夹、大文件、空文件、临时文件、相似图片、相似视频、重复音乐、无效符号链接、损坏文件、错误扩展名、EXIF 清理、视频优化器和不良文件名。如果你想在普通电脑上做一次彻底的去重和瘦身,或者想把扫描过程写进脚本里跑,这套工具都能直接上手。
安装与首次扫描
拿到可运行的程序
Krokiet 提供预编译二进制,覆盖 Windows 10/11、macOS 和 Ubuntu 22.04/24.04(及 glibc 相同的发行版),下载即用,没有强制运行时依赖。旧版 GTK 4 界面(Czkawka GUI)的 12.0 是最后一个发布版本,官方建议新用户直接用 Krokiet。如果你更习惯从源码安装,一条命令即可:
cargo install krokiet --locked有两点依赖值得注意:"相似视频"工具需要系统里有 ffmpeg(macOS 上可用 Homebrew 安装);HEIC、RAW、AVIF 等图片格式的解析是可编译特性,需要额外链接对应原生库,默认构建不包含。安装说明细节见 krokiet/README.md。
第一次打开看到什么
主界面分为三块:左侧是 14 个工具的分类列表,选中其一后中间区域用于添加要扫描的目录,右侧是结果列表,图片类结果带缩略图。扫描完成后,底部会出现一组操作按钮:删除、移入回收站、重命名、创建硬链接或符号链接等,都可以针对当前选中结果批量执行。界面同时支持多语言(波兰语、英语、意大利语等,通过 Fluent 语言文件管理)。首次扫描会把文件元数据写入缓存,同样的目录第二次扫描速度会明显变快。
查找重复与相似内容
重复文件:四种匹配方式怎么选
重复文件查找(核心实现在 czkawka_core/src/tools/duplicate/)支持四种搜索方式:按文件名、按文件大小、按大小加文件名组合,以及按内容哈希。哈希方式最可靠,默认使用 BLAKE3(一种比 MD5 更快且碰撞概率更低的哈希算法),也可切换 XXH3 或 CRC32。为节省时间,小于 8192 字节的文件默认不参与比对。
结果是按组展示的:每组里内容相同的文件排在一起,你只需决定保留哪一个。删除策略可以用代码表达,例如AEN表示保留每组最新的文件、其余删除,HARD则把重复项替换成硬链接(硬链接让多个文件名指向同一份磁盘数据,不占额外空间)。
相似图片与相似视频
"重复"和"相似"是两回事:两张截图可能分辨率不同、带水印或只是裁剪过,文件名和哈希都不相同,但看起来几乎一样。相似图片工具用感知哈希(把图片缩成特征指纹再比较距离)来发现它们,阈值可调——数值越小越严格,适合找缩略图与原图;数值放大一些则能覆盖压缩和水印差异。相似视频工具更进一步:它先检测并忽略视频四周的黑边,再对关键帧做指纹比对,还能识别"一个短片段藏在长视频里"的情况;若需要更严格地判断,可开启音轨指纹比较(速度较慢)。这两项都是同类清理工具中较少见的功能。
清理空文件夹、空文件与临时文件
空目录与零字节文件
空文件夹工具用专门的算法找出里面没有任何文件和子目录的目录,适合清理项目删了一半后残留的目录树。空文件工具列出零字节文件,还可以扩展检查"内容全为 null 字节或不可打印字符"的文件。两者都支持直接删除或移入回收站。
临时文件与大文件
临时文件工具按内置的后缀清单(如.tmp、.bak、.crdownload、.part、thumbs.db等)匹配,清单可以被完全自定义。大文件工具则列出指定数量(默认 50 个)中最大的文件,也可以反过来找最小文件,帮你快速定位"是什么占满了磁盘"。此外还有三个针对性工具:损坏文件检测(打开 PDF、图片、压缩包、字体等验证是否真的可读)、错误扩展名检测(文件头内容与扩展名不符,可一键改名)、以及不良文件名检查(全大写扩展名、表情符号、首尾空格等)。
进阶:CLI 与自动化清理
先演练再执行
命令行版 czkawka_cli 与 GUI 共用同一套扫描核心,每个工具对应一个子命令,参数手册见 instructions/Instruction_CLI.md。以删除重复文件为例,-d指定目录,-D AEN选择保留最新文件的策略,-Q表示只打印将要执行的操作而不真正执行(dry run):
czkawka_cli dup -d ~/Photos -D AEN -Q确认输出无误后去掉-Q即可实际删除;再加-y可改为移入系统回收站。退出码经过设计:找到匹配文件时返回 11,无匹配为 0,出错为 1,方便在脚本里判断结果。
写进定期任务
把结果导出为 JSON(-p)或文本(-f)后,可以配合定时任务做每日重复文件报告,或在 CI 里检查构建产物是否存在空文件。退出码机制意味着你不需要额外解析输出,用一行命令就能让"发现垃圾文件"变成流水线里的一个可判断条件。
避坑指南
常见误区
- 按文件名匹配去重误报很多,文档、
file (1).txt这类命名几乎必然命中,正式去重请始终用哈希方式。 - 损坏文件检测存在误报,官方文档也明确提醒删除前先人工确认文件确实打不开。
- "临时文件"不等于可删文件,
.part可能是没下完的重要下载,删除前先看一遍列表。 - 相似图片阈值调得太宽松会误伤风格接近但内容不同的照片,建议从默认的 5 开始小步调整。
保护原始数据的参数
删除前有三个值得记住的机制:用-e整体排除目录(比按文件排除更快);用-E传 glob 模式做更细的排除(如*/.git);用参考目录-r指定"只参与比较、绝不被删除"的位置,例如把备份目录设为参考、只清理新接收目录里的重复项。EXIF 清理默认也是保守的——它写出一份带_cleaned后缀的副本,只有显式指定覆盖才会改动原图。
与其他清理工具的对比
仓库 README 里自带一张官方对比表,这里整理成更精简的版本(✔ 表示支持):
| 能力 | Krokiet/Czkawka | FSlint | DupeGuru | BleachBit |
|---|---|---|---|---|
| 重复文件查找 | ✔ | ✔ | ✔ | — |
| 相似图片 | ✔ | ✔ | ✔ | — |
| 相似视频(含片段包含) | ✔ | — | — | — |
| 重复音乐(标签或音频内容) | ✔ | — | 仅标签 | — |
| 空文件夹 / 空文件 / 临时文件 | 全部 ✔ | 全部 ✔ | — | 仅临时文件 |
| 视频优化(裁黑边、转码) | ✔ | — | — | — |
| EXIF 清理 | ✔ | — | — | — |
| 运行系统 | Linux/Windows/macOS/FreeBSD/Android | 仅 Linux | Linux/Windows/macOS | Linux/Windows/macOS |
| 扫描缓存(二次加速) | ✔ | — | ✔ | ✔ |
| 实现语言 | Rust | Python | Python/C++ | Python |
可以看出差异主要在覆盖面的"长尾":FSlint 有若干包管理与文件命名相关的小工具,DupeGuru 定制选项多,而 Krokiet/Czkawka 在视频、音乐和元数据方向独有较多能力。
适合哪些人
- 普通用户:装 Krokiet 预编译包,图形化完成去重和清理即可,Android 设备用 Cedinia。
- 脚本与运维用户:用 czkawka_cli 加退出码机制,把清理检查嵌进定时任务和 CI。
- 开发者:扫描核心以
czkawka_corecrate 形式发布,可被其他 Rust 项目直接复用,也提供 Python 绑定。 - 如果你只需要最基础的去重,DupeGuru 是功能相近的替代;需要清理系统级缓存和冗余软件时,BleachBit 更对口,两者可以配合使用。
【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考