ファイルの各列(フィールド)を個別に並べ替えます。

ファイルの各列(フィールド)を個別に並べ替えます。

sort私は主に1つのフィールドを渡してから別のフィールドを渡すことが可能であることを知っています。たとえば、

$ echo -e "1 5\n1 4\n8 2\n1 9" | sort -k 1,1n -k 2,2n
1 4
1 5
1 9
8 2
$ 

しかし、私は正しいですか?常にsort行をそのまま維持します。たとえば、出力が次のようにソートすることは不可能です。

1 2
1 4
1 5
8 9

これが不可能な場合、sort正しいツールは何ですか?

ベストアンサー1

〜のようにトムジチ有名な

paste -d ' ' <(echo -e "1 5\n1 4\n8 2\n1 9" |
               cut -f1 -d' ' |
               sort -n
           ) <(echo -e "1 5\n1 4\n8 2\n1 9" |
               cut -f2 -d' ' |
               sort -n
           )

おすすめ記事