如果我创建一个包含以下行的文本文件:
它将被视为具有三个行,每行分别包含猫,狗和兔子。
当我执行
然而,如果我将/1和/2附加到我的行中,排序输出将发生巨大变化,我不知道原因。
输入:
cat dog rabbit
它将被视为具有三个行,每行分别包含猫,狗和兔子。
>TESTTEXT_10000000
>TESTTEXT_1000000
>TESTTEXT_10000002
>TESTTEXT_10000001
当我执行
sort myfile
命令时,输出结果为:>TESTTEXT_1000000
>TESTTEXT_10000000
>TESTTEXT_10000001
>TESTTEXT_10000002
然而,如果我将/1和/2附加到我的行中,排序输出将发生巨大变化,我不知道原因。
输入:
>TESTTEXT_10000000/1
>TESTTEXT_1000000/1
>TESTTEXT_10000002/1
>TESTTEXT_10000001/1
输出:
>TESTTEXT_10000000/1
>TESTTEXT_1000000/1
>TESTTEXT_10000001/1
>TESTTEXT_10000002/1
输入:
>TESTTEXT_10000000/2
>TESTTEXT_1000000/2
>TESTTEXT_10000002/2
>TESTTEXT_10000001/2
输出:
>TESTTEXT_10000000/2
>TESTTEXT_10000001/2
>TESTTEXT_1000000/2
>TESTTEXT_10000002/2
是否将正斜杠识别为分隔符?使用--field-separator没有改变其行为。如果是这样,为什么1000000/2在1000001/2和1000002/2条目之间?使用人类排序、数字排序或其他选项从未带来一致性。有人能帮我解决吗?
:编辑:
因为考虑到答案的相关性,此机器上LC_ALL的值为en_GB.UTF-8
LC_ALL=C sort file
- user000001