我有一个跟随json
{ "kind":"testObject", "spec":{ }, "status":{ "code":"503" } }
我只想检索code的值,这样它就只显示“503”作为输出。我确实尝试过使用jmespath,但是二进制文件是不可能,而且不确定使用什么。
xj3cbfub1#
使用.status.code存取值:
.status.code
$ jq '.status.code' <<JSON { "kind":"testObject", "spec":{ }, "status":{ "code":"503" } } JSON "503"
如果希望输出为503(与"503"相比),请使用--raw-output/-r:
503
"503"
--raw-output
-r
$ jq -r '.status.code' <<JSON { "kind":"testObject", "spec":{ }, "status":{ "code":"503" } } JSON 503
rnmwe5a22#
由于此问题具有jmespath标记,因此有必要指出可以使用JMESPATH命令行工具jp,如下所示:
jp status.code
或取消引号:
jp -u status.code
类似地,使用jaq(它具有基于jq的语法),可以编写:
jaq .status.code
jaq -r .status.code
2条答案
按热度按时间xj3cbfub1#
使用
.status.code
存取值:如果希望输出为
503
(与"503"
相比),请使用--raw-output
/-r
:rnmwe5a22#
由于此问题具有jmespath标记,因此有必要指出可以使用JMESPATH命令行工具jp,如下所示:
或取消引号:
类似地,使用jaq(它具有基于jq的语法),可以编写:
或取消引号: