4 个版本 (稳定版)
1.1.1 | 2022年2月24日 |
---|---|
1.1.0 | 2022年2月23日 |
1.0.0 | 2022年2月16日 |
0.1.0-rc1 | 2022年2月10日 |
#2977 在 解析器实现
10KB
173 行
对象构建器
从您的控制台构建对象!此工具允许您从控制台创建 JSON、YAML、TOML(以及可能更多的)格式的字符串。
安装
从 crates.io
cargo install object-builder
从源代码
git clone https://gitlab.com/Yannik_Sc/object-builder.git
cd object-builder
cargo install --path .
示例
基本用法
安装后,可以使用 ob
命令调用 Object Builder。
ob test=true
# Results in:
# {"test": true}
# The same is possible with yaml
ob test=true -o yaml
# test: true
# or toml
ob test=true -o toml
# test = true
目前支持 Yaml、TOML 和 Json 作为输出格式。默认情况下使用 Json。未来可能会有更多格式。要查看格式列表的最新版本,请使用 ob --help
。
嵌套调用
要创建更复杂的结构,可以使用 ob
的输出作为输入,使用 命令替换。
ob value="$(ob -a some array)"
# {"value":["some","array"]}
当然,也可以使用 toml 和 yaml 作为输出格式。但是,这只能在最外层的 ob
调用中设置,否则输入值可能会导致错误。
数组暗示
ob
在您传递 -a
标志时生成一个数组。但是,如果没有输入包含等号 =
,也可以暗示这一点。
ob value1 value2 value3
# ["value1","value2","value3"]
ob value1 value2= value3
# {"value1":null,"value2":"","value3":null}
传递没有值的 =
将导致给定键的空字符串。所有甚至不包含该符号的键都将假定 null
。
使用 stdin 转换
从 1.1.0 版本开始,对象构建器可以从 stdin 获取 yaml 和 json 字符串。可以使用不同的 --o
输出类型将文件输出或有效地转换。
# Input: {"test" true}
cat my.json | ob -o yaml
# Output: test: true
依赖关系
~2.7–3.5MB
~75K SLoC