Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell `排序';当一行是另一行的前缀时的行为_Shell_Sorting_Posix_Gnu Coreutils - Fatal编程技术网

Shell `排序';当一行是另一行的前缀时的行为

Shell `排序';当一行是另一行的前缀时的行为,shell,sorting,posix,gnu-coreutils,Shell,Sorting,Posix,Gnu Coreutils,规范似乎没有说明当提供给排序程序的一行是另一行的前缀时会发生什么 但我发现我的副本(GNU coreutils 8.4)优先于前缀: $ echo -e 'foo\nfoobar' | sort foo foobar $ echo -e 'foobar\nfoo' | sort foo foobar 这是否对所有的排序实现都通用 这种行为的定义是什么 我可以信赖它吗 这是因为这是“排序”一词的通用定义吗 排序顺序由当前语言环境定义,这是POSIX规范必须说明的全部内容。您当前的区域设置(和

规范似乎没有说明当提供给
排序
程序的一行是另一行的前缀时会发生什么

但我发现我的副本(GNU coreutils 8.4)优先于前缀:

$ echo -e 'foo\nfoobar' | sort
foo
foobar

$ echo -e 'foobar\nfoo' | sort
foo
foobar
  • 这是否对所有的
    排序实现都通用
  • 这种行为的定义是什么
  • 我可以信赖它吗
  • 这是因为这是“排序”一词的通用定义吗

排序顺序由当前语言环境定义,这是POSIX规范必须说明的全部内容。您当前的区域设置(和大多数区域设置,我猜想)将考虑一个前缀比字符串本身更小的字典。