我有以下json文件:
{
"FOO": {
"name": "Donald",
"location": "Stockholm"
},
"BAR": {
"name": "Walt",
"location": "Stockholm"
},
"BAZ": {
"name": "Jack",
"location": "Whereever"
}
}
我正在使用jq,并想获取“位置”为“斯德哥尔摩”的对象的“名称”元素。
我知道我可以通过
cat json | jq .[] | jq ."name"
"Jack"
"Walt"
"Donald"
但是给定子键的值(在此"location" : "Stockholm"
),我无法弄清楚如何仅打印某些对象。
根据关于使用jq处理JSON的文章改编而成,您可以这样使用select(bool)
:
$ jq '.[] | select(.location=="Stockholm")' json
{
"location": "Stockholm",
"name": "Walt"
}
{
"location": "Stockholm",
"name": "Donald"
}
问题内容: 鉴于此输入: 我正在尝试使用jq构造一个过滤器,该过滤器返回s的所有对象,这些s 的内部数组中 不 包含“数据” ,并且输出以换行符分隔。对于以上数据,我想要的输出是 我想我与此有点接近: 但过滤器不正确,并且无法编译(获取)。 问题答案: 很接近!在表达式中,您必须在之前使用管道()。 该滤波器产生预期的输出。 的JQ食谱具有语法的一个例子。 例如,我只想要类型键包含“ house”
问题内容: 我正在尝试从的JSON输出解析环境变量。令人讨厌的是,这些环境变量没有作为有用的键值对返回。它们只是x = y字符串的数组。这是输出的相关代码段: 我想将该数组转换为这样的东西: 这样,我可以使用一条命令来获取我关心的值。我不知道如何做到这一点。 选择数据甚至将键和值拆分为单独的元素相对容易。例如,如果使用,我将获得如下数据: 但是,我不知道如何将数据转换为对象分配。似乎应该是或的某种
问题内容: 编码: 对象数据: 问题: 正确显示“ 2009-05-27 16:36:45”。 正确显示“ A5A50000”。 报告“ data.bsID未定义”。 报告“数据[bsID]未定义”。 我不清楚何时/不评估变量。也许我忽略了一些愚蠢的事情,但是我无法在这里解决我的问题。 问题答案: 您可以通过点表示法或括号表示法访问对象属性。 具有动态值时,必须使用后者: 因此,您真正想要的是:
从对象中检索出给定选择器指定的一组属性。 对每个选择器使用 Array.map() ,使用 String.split('.') 来分割每个选择器,并使用 Array.reduce() 来获取它所指示的值。 const select = (from, ...selectors) => [...selectors].map(s => s.split('.').reduce((prev, cur)
问题内容: 我试图找出是否可以使用Hibernate Criteria API进行以下HQL: 其中InitialCount是一个非常简单的,具有字符串和长构造函数的bean: 可能吗? 问题答案: 试试这个 : 其中,公式属性是映射到公式“ substring(name,1,1)”的人员的属性
问题内容: 所以有一个DataFrame说: 我要选择特定列的特定行的数据类型为type的行。 例如,我想选择行,其中列中的数据是。因此它应该打印如下内容: 谁的直观代码如下所示: 显然不起作用! 谢谢,请帮忙! 问题答案: 这有效: