jq 过滤器将两个 json 值合并为一个带有斜线分隔符的值
jq filter to combine two json values into one with a slash delimiter
我正在尝试使用 jq
处理 json 输入:
{
"foo":"xxx",
"bar":"yyy"
}
正在尝试获得以下所需的 json 输出:
{"path":"xxx/yyy"}
我已经为过滤器尝试了几种方法,一般来说
.|.foo as $path1|.bar as $path2|{"path":?????}
$path1+"/"+$path2
无效。
我应该更换什么?????以获得想要的结果?
你真的很亲近。我认为你只需要一些括号:
.|.foo as $path1|.bar as $path2|{"path":($path1 + "/" + $path2)}
或者只是:
{"path":(.foo + "/" + .bar)}
或者更好(如果需要转换为字符串):
{"path": "\(.foo)/\(.bar)"}
我正在尝试使用 jq
处理 json 输入:
{
"foo":"xxx",
"bar":"yyy"
}
正在尝试获得以下所需的 json 输出:
{"path":"xxx/yyy"}
我已经为过滤器尝试了几种方法,一般来说
.|.foo as $path1|.bar as $path2|{"path":?????}
$path1+"/"+$path2
无效。
我应该更换什么?????以获得想要的结果?
你真的很亲近。我认为你只需要一些括号:
.|.foo as $path1|.bar as $path2|{"path":($path1 + "/" + $path2)}
或者只是:
{"path":(.foo + "/" + .bar)}
或者更好(如果需要转换为字符串):
{"path": "\(.foo)/\(.bar)"}