現在、Rager APIを介してPagerDutyからインシデントのリストを取得しようとしています。which returns them in JSON array。私は、incident_keyでunique_by()を使用して重複イベントを削除したいと思います。しかし、私はincident_keyの最初の出現が欲しいですし、unique_by()は最後の出現を除くすべてを取り除いています。jq unique_by - 残りの要素を選択してください
[
{ "reference_key":"200", "id":"1" },
{ "reference_key":"200", "id":"2" },
{ "reference_key":"200", "id":"3" },
{ "reference_key":"201", "id":"4" },
{ "reference_key":"201", "id":"5" },
{ "reference_key":"201", "id":"6" }
]
は、私は何をしようとしていることを使用することである:私が持っている場合今、849、850、851、同じincident_keyを持つすべてのincident_number、unique_byは()851
簡単な例を返します。 unique_by()はidに基づいてreference_keyの最初の出現を取得します。したがって、この場合には、私はこの問題は、私がこれを制御することはできませんということで、私は現在でこれをやろうとしているデータと、それは最後に戻っている出力は
[
{ "reference_key":"200", "id":"1" },
{ "reference_key":"201", "id":"4" }
]
になりたいと思います最初のものの代わりにオカレンス、そうそう。
[
{ "reference_key":"200", "id":"3" },
{ "reference_key":"201", "id":"6" }
]
私はreverseを使い、unique_by()を呼び出してみましたが、同じ結果が得られました。これを何らかの形で支配する方法はありますか?
私はそれが今回の仕事でしたので、私の例では、最高ではなかったと仮定します。理由は分かりませんが、現在PagerDutyのイベントリストから取得しているアレイでは、最後の発生が選択されます。ここには、unique_byとunique_byの間には違いがあります。 http://i.imgur.com/3vSuoYT.png –
最後のセクションが機能しました!あなたはそれを壊して、私は正確に何が起こっているか理解することができますか? –