ファイル内のJSONオブジェクトの値の比較

ファイル内のJSONオブジェクトの値の比較

以下に示すように、何千ものJSONオブジェクトを含むJSONファイルがあります。比較したいst1st2

JSONファイル内の各オブジェクトについて:st1より大きい場合は、st2オブジェクトを別のファイルにコピーします。

{
    "in": 4,
    "li": [{
        "fa": 28806,
        "fs": 00002,
        "fb": 21894
    }],
    "ome": {
         "ms": "00000000000"
    },
    "st2": 1508584163,
    "ei": {
        "ev": 0
    },
    "rn": 4,
    "st1": 1508584147
}

を使ってみましたか?それともJSONファイルですが、jq使いやすいですか?awk

答え1

jqJSONデータの解析に適しています。

$ 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}

これは別のファイルにリダイレクトできます。

関連情報