Estou tentando comparar dois arquivos json longos com o WinMerge usando o plugin QueryJSON. As propriedades nesses arquivos estão em ordem aleatória. Esse parâmetro para .\jq funciona, mas objetos aninhados não são afetados:
QueryJSON ". | to_entries | sort_by(.key) | from_entries"
Há um comando "flatten" que não me forneceu o resultado que procurei (pode estar sendo usado incorretamente).
Jsons poderiam ser, por exemplo:
{
"Id": 1,
"Addresses":[
{"Street": "Street 1",
"PostalCode": 12345},
{"Street": "Street 2",
"PostalCode": 12345}
],
"Person":{
"FirstName": "Mike",
"LastName":"Boe"
}
}
{
"Id": 2,
"Person":{
"FirstName": "John",
"LastName":"Boe"
}
"Addresses":[
{"Street": "Street 3",
"PostalCode": 12345},
{"Street": "Street 2",
"PostalCode": 12345}
]
}
Posso comparar objetos aninhados um por um apontando para eles como
QueryJSON ".Person | to_entries | sort_by(.key) | from_entries"
Mas há alguma maneira de classificar propriedades também dentro desses objetos (mesmo que isso os achataria)? Obrigado.