任何人都可以解释为什么“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
$
Run Code Online (Sandbox Code Playgroud)
输出上不应该像“sort -u”那样有两条独特的行吗?
$ sort -u /tmp/test_
1e971713-31e4-62d0-a3d1-37c0610c10e5
1e97d59f-bc32-6126-b7b1-0b52ddd35273
$
Run Code Online (Sandbox Code Playgroud)
Fre*_*ddy 10
@Kusalananda 是对的。
https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html
命令
sort -u
和sort | uniq
是等效的,但这种等效性不扩展到任意排序选项。例如,sort -n -u
在检查唯一性时只检查初始数字字符串的值,而sort -n | uniq
检查整行。
由于您的数字字符串是1
,因此您只能获得第一行。