uuidの "sort -nu"

uuidの

以下の例では、「sort -nu」が1つの一意の行のみを返す理由を説明できる人はいますか?

$ cat /tmp/test_
1e971713-31e4-62d0-a3d1-37c0610c10e5
1e97d59f-bc32-6126-b7b1-0b52ddd35273
1e971713-31e4-62d0-a3d1-37c0610c10e5
$ sort -nu /tmp/test_
1e971713-31e4-62d0-a3d1-37c0610c10e5
$

"sort -u"のように、出力に2つの一意の行を含める必要はありませんか?

$ sort -u /tmp/test_
1e971713-31e4-62d0-a3d1-37c0610c10e5
1e97d59f-bc32-6126-b7b1-0b52ddd35273
$

ベストアンサー1

@Kusalananda そうなんですね。

https://www.gnu.org/software/coreutils/manual/html_node/sort-inspiration.html

コマンドsort -usort | uniqは同じですが、この同一性は任意のソートオプションには拡張されません。たとえば、一意性を確認すると、行全体でsort -n -uはなく最初の数値文字列の値のみが検証されます。sort -n | uniq

数値文字列は、そのため1最初の行だけを取得します。

おすすめ記事