我正在尝试使用jq
将 JSON 数组内的值连接到单行逗号分隔列表中。(没有尾随逗号)
{
"hardware": [
"abc",
"def",
"ghi"
]
}
Run Code Online (Sandbox Code Playgroud)
创建“abc、def、ghi”
我可以使用将值连接在一起
jq -jr '(.hardware[])' input.json
abcdefghi
Run Code Online (Sandbox Code Playgroud)
我尝试插入逗号和空格但无法工作
jq -jr '(.hardware[]|join(", ")'
jq: error: syntax error, unexpected $end (Unix shell quoting issues?) at <top-level>, line 1:
(.hardware[]|join(", ")
Run Code Online (Sandbox Code Playgroud)
有人能指出我要使用的正确语法吗?
谢谢
电车
您正在寻找
jq -r '.hardware | join(", ")'
Run Code Online (Sandbox Code Playgroud)
您发布的版本中的语法错误是因为开头(
没有匹配的)
,但在任何情况下join
都需要一次给出所有值,因此.hardware
优于.hardware[]
(一次传递一个值)。
归档时间: |
|
查看次数: |
11723 次 |
最近记录: |