1 个不稳定版本
0.6.0 | 2024 年 3 月 8 日 |
---|
在 加密学 中排名第 1049
87KB
1.5K SLoC
omnibor-cli
此软件包定义了一个 OmniBOR 命令行界面,旨在简化 OmniBOR 标识符和清单的生成和处理。
[!注意] 目前此项目还在开发中。今天的
omnibor
CLI 只支持处理标识符,而不支持清单。
安装
OmniBOR CLI 为多个平台提供了预构建的二进制文件。查看最新的发布说明,以获取以下平台的安装程序:
- Apple Silicon macOS
- Intel macOS
- x64 Windows
- x64 Linux
- x64 MUSL Linux
向 Axo 的团队表示衷心的感谢,他们制作的 cargo-dist
使生成这些二进制文件变得极其容易。
您还可以尝试使用 cargo-binstall
进行安装,尽管我们还没有对其进行过测试。
如果您想从源代码构建,并且您有一个足够新的 Rust 工具链,您可以使用:
- 运行
cargo install omnibor-cli
- 检出此存储库并运行
cargo install --path omnibor-cli
我们目前没有承诺最小支持的 Rust 版本(MSRV),通常跟踪稳定版本。这可能在将来发生变化。
示例
id
使用纯格式
$ omnibor id Cargo.toml
# Cargo.toml => gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f
id
使用 JSON 格式
$ omnibor id Cargo.toml -f json
# {"id":"gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f","path":"Cargo.toml"}
id
使用简短格式
$ omnibor id Cargo.toml -f short
# gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f
find
使用纯格式
$ omnibor find gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f .
# gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f => ./Cargo.toml
find
使用 JSON 格式
$ omnibor find gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f . -f json
# {"id":"gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f","path":"./Cargo.toml"}
find
使用简短格式
$ omnibor find gitoid:blob:sha256:c54d66281dea2bf213083f9bd3345d89dc6657fa554b1c9ef14cfe4bab14893f . -f short
# ./Cargo.toml
用法
omnibor--help
Usage: omnibor [OPTIONS] <COMMAND>
Commands:
id For files, prints their Artifact ID. For directories, recursively prints IDs for all files under it
find Find file matching an Artifact ID
help Print this message or the help of the given subcommand(s)
Options:
-b, --buffer <BUFFER> How many print messages to buffer at one time, tunes printing perf
-h, --help Print help
-V, --version Print version
omnibor id--help
For files, prints their Artifact ID. For directories, recursively prints IDs for all files under it
Usage: omnibor id [OPTIONS] <PATH>
Arguments:
<PATH> Path to identify
Options:
-f, --format <FORMAT> Output format (can be "plain", "short", or "json") [default: plain]
-H, --hash <HASH> Hash algorithm (can be "sha256") [default: sha256]
-h, --help Print help
omnibor find--help
Find file matching an Artifact ID
Usage: omnibor find [OPTIONS] <URL> <PATH>
Arguments:
<URL> `gitoid` URL to match
<PATH> The root path to search under
Options:
-f, --format <FORMAT> Output format (can be "plain", "short", or "json") [default: plain]
-h, --help Print help
输出格式
两者 id
和 find
子命令都支持一个 -f
/--format
标志,可以是以下任何一个:
plain
(默认):一种简单的可读格式,将路径和标识符映射,用粗箭头(=>
)分隔。short
:只打印要搜索的内容(对于id
命令,是一个工件标识符;对于find
命令,是一个文件系统路径)。json
:打印一个包含path
和id
字符串类型字段的 JSON 对象。
建议使用 short
格式进行管道或重定向到其他命令。
建议使用 json
格式进行更结构化的上下文,并且可以传递给 jq
进行操作。
许可证
OmniBOR CLI 源代码采用 Apache-2.0 许可证。
依赖关系
~7–9.5MB
~184K SLoC