次のような 300MB のファイルがあります。
アイテム アイテム アイテム
アイテム アイテム
2 何か
……
基本的には、2 つの列がずっと下に向かっています。したがって、各行には 2 つのエントリがあります。列はこの文字(Alt +0009) で区切られており、これは「タブ」文字だと思います。行は、最初の列エントリによって英数字順にソートされます。
基本的に、このファイルで行う必要があるのは、次のように新しいファイルを作成することです。
- 最初に、 2 番目の列エントリで行を英数字順に並べ替えます。
- 次に、2 番目の列エントリが最初の列エントリの 1 つとしてファイルに表示されないすべての行を削除します。
たとえば、次のようになります。
AB
AC
AE
CA
EF
に行く
CA
AB
AC
AE
EF
そして最後に
CA
AC
AE
(この例では、列を区切るためにタブ文字の代わりにスペース文字を使用していることに注意してください。並べ替えようとしているファイルでは、列はタブ文字 (Alt +0009) で区切られています)
では、Unix コマンドを使用してこれを行うにはどうすればよいでしょうか。