所谓的“智能排序”对我来说毫无意义。它会将 1z 放在 0005abz 前面。我希望排序顺序能像以前一样:
00056 00056aaa 004abc 03abc 2abc
并不是
2abc 03abc 004abc 00056aaa
答案1
- 这是设计使然:数字组按数字顺序排序。
/etc/default/locale
包含此默认值。LC_COLLATE=C
在其中设置。这将按字母顺序对文件进行排序,但请确保您知道自己在做什么:大写字母和小写字母在 ASCII 中不相邻。以大写字母开头的名称将排在第一位,然后是以小写字母开头的文件。
ls 现在将按数字排序04, 0400, 1, 11, 2, 22, 3, 33
。