什么是jq'。'做?

时间:2016-07-28 15:00:06

标签: json jq

如何jq'。'解析json并显示?

curl 'https://api.github.com/repos/stedolan/jq/commits?per_page=5' | jq '.'

我看到json被解析并正确显示

  

“xxxx | jq”背后的实施是什么。 “

我怎么能理解?

3 个答案:

答案 0 :(得分:2)

来自the documentation

  

.

     

绝对最简单(也是最不感兴趣)的过滤器是.。这是一个过滤器,它接受输入并将其作为输出保持不变。

     

由于jq默认打印所有输出,因此这个简单的程序可以是格式化JSON输出的有用方法,比如curl

答案 1 :(得分:2)

在jq编程语言中,.指的是过滤器的隐式输入。例如,def f: .;定义了一个函数f,它按原样输出其隐式输入。

请注意,在过滤器参数内,过滤器可以更改.引用的内容:例如,map(f)定义为[.[] | f];在jq程序[1, 2, 3] | map(. + 1)上,.指的是数组的每个元素。

答案 2 :(得分:0)

除了jq .漂亮打印输出外,如果无法解析输入文件,它也会产生警告。因此,它可以方便地测试未知的JSON文件,以查看源文件是否存在语法问题。