用jq创建一个字典



我有以下输入:

[
{
constant_id: 5,
object_id: 2,
object_type: 'delimited_file',
name: 'data_file_pattern',
value: 'list_of_orders.csv',
insert_date: 2021-11-23T10:24:16.568Z,
update_date: null
},
{
constant_id: 6,
object_id: 2,
object_type: 'delimited_file',
name: 'header_count',
value: '1',
insert_date: 2021-11-23T10:24:16.568Z,
update_date: null
}
]

我想结合起来得到以下结果:

{
data_file_pattern: 'list_of_orders.csv',
header_count: '1'
}

基本上只使用输入字典中的namevalue键创建单个字典。我相信我以前也这样做过,但就我的一生而言,我再也想不出来了。

如果在输入JSON中正确引用,那么只需调用from_entries内建即可。它将一个对象数组转换为具有给定键/值对的单个对象。它从一个名为keyKeynameName的字段中获取字段名称,并从一个称为valueValue的字段中获得值(请参阅演示(:

from_entries
{
"data_file_pattern": "list_of_orders.csv",
"header_count": "1"
}

注意:我认为第二个字段名称应该读header_count,而不是delimited_file,因为您希望它的名称取自.name,而不是来自.object_type

最新更新