我正在尝试jq
在 Windows 机器上运行查询,它从单独一行的输出中提取值
jq -r .Accounts[].Id
Run Code Online (Sandbox Code Playgroud)
输出
204359864429
224271824096
282276286062
210394168456
090161402717
Run Code Online (Sandbox Code Playgroud)
如何运行jq
查询,以便将输出组合在由空格分隔的单行上
这就是我需要的-
204359864429 224271824096 282276286062 210394168456 090161402717
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。
Rya*_*yan 13
您可以使用@sh
格式化程序:
jq -r ".Accounts[].Id | @sh"
来自 jq 文档:
输入经过转义,适合在 POSIX shell 的命令行中使用。如果输入是数组,则输出将是一系列以空格分隔的字符串。
参考:
https://stedolan.github.io/jq/manual/#Basicfilters
Ini*_*ian 12
通常的方法是使用@csv
或@tsv
运算符将结果转换为 CSV 或制表符分隔格式。这些运算符需要将结果包含在数组中。对于你的情况也有一个空格分隔,我们可以做一个简单的join(" ")
操作
jq -r '[.Accounts[].Id]|join(" ")'
Run Code Online (Sandbox Code Playgroud)