Linuxソートを使用して次の出力をどのように取得できますか?

Linuxソートを使用して次の出力をどのように取得できますか?

入力する:

C_ABC_066.T02
C_BC_066.T02
C_ABC_066.T01
C_BC_066.T01

Linuxでソートした後に希望の出力

C_BC_066.T01
C_ABC_066.T01
C_BC_066.T02
C_ABC_066.T02

ベストアンサー1

このような?

$ sort -t. -k2,2 -k1,1r data
C_BC_066.T01
C_ABC_066.T01
C_BC_066.T02
C_ABC_066.T02

これは.、区切り文字(-t.)を使用してから2番目のフィールド(-k2,2)に基づいてソートし、逆順に最初のフィールド(-k1,1r)に基づいてソートすることを意味します。どのロケールよりも先にABCソートしたいので、BCここでは逆ソートを実行する必要があります。

おすすめ記事