给定以下jq命令和Json:
jq '.[]|[.string,.number]|join(": ")' <<< '
[
{
"number": 3,
"string": "threee"
},
{
"number": 7,
"string": "seven"
}
]
'
我试图将输出格式化为:
three: 3
seven: 7
不幸的是,我的尝试导致了以下错误:
jq:错误:不能添加字符串和数字
如何将数字转换为字符串,以便两者都可以连接?
发布于 2016-02-02 17:08:27
jq命令具有串字串函数。我花了一段时间才学会尝试和错误地使用它。下面是如何使用它:
jq -r '.[] | [ .string, .number|tostring ] | join(": ")' <<< '
[{ "number": 9, "string": "nine"},
{ "number": 4, "string": "four"}]
'
nine: 9
four: 4
发布于 2017-10-10 19:51:55
另一种可以说是更直观的格式是:
jq '.[] | .string + ": " + (.number|tostring)' <<< ...
值得注意的是,在.number|tostring
周围需要父母。
https://stackoverflow.com/questions/35365769
复制相似问题