Use definitivamente jq
para analisar dados JSON:
$ cat file.json
{ "st1":0, "st2":10 }
{ "st1":0, "st2":0 }
{ "st1":10, "st2":0 }
$ jq -c 'select(.st1 > .st2)' file.json
{"st1":10,"st2":0}
Isso pode ser redirecionado para outro arquivo.
Eu tenho um arquivo json com milhares de objetos JSON, como abaixo. Eu quero comparar st1 contra st2.
Para cada objeto no arquivo JSON, se st1 for maior que st2, copie todos os objetos correspondentes a outro arquivo.
{
"in": 4,
"li": [{
"fa": 28806,
"fs": 00002,
"fb": 21894
}],
"ome": {
"ms": 00000000000"
},
"st2": 1508584163,
"ei": {
"ev": 0
},
"rn": 4,
"st1": 1508584147
}
Eu tentei usar o jq ou é mais fácil fazê-lo com o awk mesmo que seja um arquivo JSON?