3 个版本 (破坏性更新)
0.3.0 | 2022 年 3 月 1 日 |
---|---|
0.2.0 | 2022 年 2 月 26 日 |
0.1.0 | 2022 年 2 月 11 日 |
#15 in #bag
77KB
2K SLoC
bagr
bagr
是一个用于与 BagIt 包交互的命令行工具。
它仍在积极开发中,但包创建功能已经完善。
安装
预构建版本
发布页面 上有预构建的二进制文件,应该在常见的操作系统和架构上都能使用。您不需要安装 Rust 就可以使用它们。
- 下载并解压相应的二进制文件
- 执行
./bagr help
以验证其是否正常工作
本地构建
- 安装 Rust
- 执行:
cargo install bagr
- 验证安装:
bagr help
用法
创建一个新的包
默认情况下,bagr
将通过调用当前目录的内容创建一个包
bagr bag .
如果您想通过 复制 源目录的内容到目标包中创建一个包,可以通过调用以下命令来实现
bagr bag src/dir dst/bag
默认情况下,使用的是 sha512
算法;可以通过 --digest-algorithm
选项更改此算法。
在 Mac 系统上,.DS_Store
文件可能会偷偷进入不需要的地方。可以通过使用 --exclude-hidden-files
标志将这些文件从打包过程中排除。 注意 这将在创建包时删除隐藏文件。
更新现有的包
如果您在创建包后修改了包的有效载荷或标签文件,bagr
也可以通过执行以下操作重新计算所有摘要并更新适当的清单文件
bagr rebag path/to/bag
默认情况下,它将使用最初在包中使用的相同摘要算法。如果您想更改算法,可以通过指定 --digest-algorithm
选项来做到这一点。
限制
- 标签文件 必须 使用 UTF-8 编码
- 不支持
fetch.txt
- 不支持 BagIt 版本 1.0 之前的版本
路线图
- 实现包验证
- 支持
fetch.txt
- 支持BagIt 0.97
- 支持BagIt配置文件
- 支持非UTF-8字符编码
依赖项
~8–18MB
~218K SLoC