グループ化とソートユーザーの最後のログイン時間

グループ化とソートユーザーの最後のログイン時間

ユーザーのログイン日を記録するCSVファイルがあります。

user1,2019-05-21
user1,2019-05-22
user1,2019-05-23
user2,2019-05-20
user2,2019-05-21
user3,2019-05-24
user3,2019-05-29
user4,2019-05-25
user4,2019-05-28

次の形式が必要です。

user1,2019-05-23
user2,2019-05-21
user3,2019-05-29
user4,2019-05-28

頑張ったawk -F, '!a[$1]++'、最後の値の代わりに最初の値を提供します。

ベストアンサー1

$ sort -t, -k1,1 -k2,2r file | sort -t, -u -k1,1
user1,2019-05-23
user2,2019-05-21
user3,2019-05-29
user4,2019-05-28

1つ目は、sortユーザーと逆の日付でデータをソートします。このステップの出力は次のとおりです。

user1,2019-05-23
user1,2019-05-22
user1,2019-05-21
user2,2019-05-21
user2,2019-05-20
user3,2019-05-29
user3,2019-05-24
user4,2019-05-28
user4,2019-05-25

2番目はsortユーザーだけをソートし、各ユーザー行(最初の行)のインスタンスを1つだけ保持します。

おすすめ記事