最初の行にタグがあるプレーンテキストファイルでいっぱいのディレクトリがあり、タグとその頻度のリストを取得したいです。タグを抽出し、大きなリストに並べ替えました。このように見えるとしましょう:
apple
banana
banana
banana
banana
orange
orange
kumquat
pomegranate
pineapple
pineapple
pineapple
次に、パイプを使用してuniq -c
、カウント付きのリストに変換します。
1 apple
4 banana
2 orange
1 kumquat
1 pomegranate
3 pineapple
私は今、逆の順序で番号で最初に、それをソートする(最大の番号が最初)、その後でみたい前方アルファベット順に。私はこれをパイピングすることを試みますsort -bnr
(先頭の空白、数値ソート、逆順を無視します)が-r
、文字部分にも適用されます:
4 banana
3 pineapple
2 orange
1 pomegranate
1 kumquat
1 apple
-k
複数のフィールドで並べ替えるオプションについて考えましたが、先日学びましたが、異なる-k
オプションに個別に反転を適用することはできないようです(おそらく、単に出力を出力するだけtac
なのでしょうか?)。sort
前の並べ替えを無視し、数値部分を再び混同するため、1秒をパイピングしても機能しません。
理想的には、ソリューションはまだとを使用sort
しuniq
ますが、必要に応じて別のツールに切り替えることもできます。ただし、これはスクリプトで終わる可能性があるため、対話型ツールを必要とするソリューションが出ています。