@csv 格式化而不为仅包含数字的列表引用整行?

@csv formatting without quoting entire line for lists containing only numbers?

当尝试使用 csv 格式输出列表时,我最终在整行周围加上了引号。有没有办法摆脱那些只使用 jq 而不求助于其他工具的人?示例如下:

我有一个 json 字符串:

{"stat": {"foo": 1.2, "bar": 3.1}}

我对其应用以下 jq 命令:

$ jq '.stat | [.foo, .bar] | @csv' test.json

生成的标准输出将是:

"1.2,3.1"

现在,我可以通过组合应用 revcut 来解决这个问题,但如果可能的话,我想跳过这一步:

rev | cut -c2- | rev | cut -c2-

只需为 "raw output" 使用 -r 命令行选项。如:jq -r ...

p.s。如果您发现自己不得不从行首和行尾删除引号,也可以使用 jq 来完成。使用 jq 1.4 或更高版本:

jq -R -r '.[1:-1]'