数字と文字を逆順に並べ替えますか?

数字と文字を逆順に並べ替えますか?

次のファイルのリストがあります。

100119329_d01.png
100119329_d08.png
100119329_d02.png
100119329_d05.png
100119329_d03.png
100119329_d04.png
100119329_d07.png
100119329_f02.png
100119329_f01.png

次の出力を得るために数字でソートし、前の文字で逆順にソートしたいと思います。

100119329_f01.png
100119329_f02.png
100119329_d01.png
100119329_d02.png
100119329_d03.png
100119329_d04.png
100119329_d05.png
100119329_d07.png
100119329_d08.png

私は試した:

cat <file> |sort -k1.11r -k1.12,1.13n

ただし、一度に1つの主張のみが有効です。そのため、数字や逆順でのみソートできます。 2つを同時に動作させるにはどうすればよいですか?

ベストアンサー1

11番目の文字のみが逆順に並べ替えられます。

sort -k1.11,1.11r -k1.12,1.13n infile

この場合(0で埋められた数字)簡単に実行できます。

sort -k1.11,1.11r infile

おすすめ記事