11 个版本
0.1.9 | 2024年5月23日 |
---|---|
0.1.8 | 2023年11月19日 |
0.1.7 | 2023年6月22日 |
0.1.4 | 2023年5月31日 |
#248 在 命令行工具
每月75次下载
20KB
379 代码行
dircs
一个用于获取文件或目录哈希的小型跨平台工具。附带多种哈希函数可供选择。
注意:我主要编写这个工具是为了个人使用,所以可能有很多粗糙的地方。欢迎提交 pull requests、功能请求或错误报告。
安装
dircs
位于 crates.io,可以使用 cargo
进行安装
cargo install dircs --locked
截至编写本文时,dircs
已通过 Rust 1.69.0 进行测试以构建。
用法
$ dircs /your/path/here
/your/path/here -> 72ce3b5f2df28051cf7204712fe93de6b7b6d1f8e8fe5972b117a248423c290c
默认情况下,dircs
将使用 BLAKE3(禁用内存映射)和自动并行级别。
运行 dircs -h
以查看更多选项。
支持的哈希函数
目前支持以下哈希函数
- BLAKE3
- BLAKE2
- MD5
- SHA1
- SHA2(摘要大小为256、384、512)
- SHA3(摘要大小为256、384、512)
如何确定哈希值?
对于单个文件或仅有一个文件的目录,dircs
将使用指定的哈希函数对文件进行哈希处理,并将字节输出为十六进制字符串。
对于包含多个文件的目录,我们执行以下操作
- 对于每个文件,使用选择的哈希函数获取哈希值。如果可能,并行执行。
- 使用生成的哈希值列表,按文件名排序。
- 按此顺序将每个哈希值输入到选择的哈希函数中,生成一个最终的哈希值,然后将其输出为十六进制字符串。
感谢
感谢
- 使用了我所使用的所有库的库作者。
- 在 b3sum 的作者,我参考了很多。
依赖项
~6.5MB
~120K SLoC