【发布时间】:2020-10-12 10:43:31
【问题描述】:
我将 yq 与 jq 一起使用,据我所知,您需要将键中的特殊字符“转义”到引号和括号中。 我想使用纯点语法 .cars.big-trucks 查询数据,但我找不到任何可以为我进行转换的工具。
我的理想用法是:
query=$(jq-query-convert ".cars.big-trucks")
yq -r $query cars.yaml
有什么想法吗?谢谢
示例 yaml 文件:
%YAML 1.1
---
cars:
big-trucks: 42
对于 jq 用户,一个示例 json 将是:
{
"cars": {
"big-trucks": 42
}
}
查询者
cat cars.json | jq "$q"
【问题讨论】:
-
@Inian 问题已编辑,我添加了示例文件但也回答了我的问题。
-
你需要使用
jq '.cars."big-trucks"',即在双引号下加上-这个词 -
我不是在询问如何转义查询字符串,而是询问它的工具。我已经编写了python脚本,到目前为止对我来说已经足够了。