ファイルの2番目の列に基づいてデータを並べ替える 質問する

ファイルの2番目の列に基づいてデータを並べ替える 質問する

n2 列と行数のファイルがあります。

column1 にnamesは column2 が含まれますage

ageこのファイルの内容を(2 番目の列)に基づいて昇順で並べ替えたいと思います。

結果には、name最年少の人の とname、その次に 2 番目に年下の人の などが表示されます。

ワンライナーのシェルまたは bash スクリプトに関する提案はありますか。

ベストアンサー1

keyオプションを使用することができますsort指示は「フィールド番号」を受け取ります。したがって、2 番目の列が必要な場合は、次のようになります。

sort -k2 -n yourfile

-n--numeric-sort文字列の数値に従って比較する

例えば:

$ cat ages.txt 
Bob 12
Jane 48
Mark 3
Tashi 54

$ sort -k2 -n ages.txt 
Mark 3
Bob 12
Jane 48
Tashi 54

おすすめ記事