`ls` 别名中的名称字母顺序与 .files 不混合

Bry*_*son 6 linux ls sort locale dot-files

我目前使用以下ls别名:alias ls='ls -alhGkpsq --color=auto'. 这导致以下目录列表。

[03:35] bryson@brys  ~ :$ ls
total 48K
4.0K drwx------ 4 bryson 4.0K Nov  2 03:34 ./
8.0K drwxr-xr-x 3 root   4.0K Apr 19  2012 ../
4.0K -rw------- 1 bryson  676 Nov  2 03:35 .bash_history
8.0K -rw-r--r-- 1 bryson   21 Nov 23  2011 .bash_logout
8.0K -rw-r--r-- 1 bryson   57 Nov 23  2011 .bash_profile
4.0K -rw------- 1 bryson   50 Nov  2 03:34 .lesshst
4.0K drwxr-xr-x 3 bryson 4.0K Nov  2 03:21 source/
4.0K drwx------ 2 bryson 4.0K Nov  2 03:23 .ssh/
4.0K -rw------- 1 bryson 1.6K Nov  2 03:23 .viminfo
Run Code Online (Sandbox Code Playgroud)

我遇到的问题,这不是OS X 版本的问题ls.ssh/是按字母顺序排列,忽略.文件名中的 。

我想是ls在顶部,这也正是它把点文件按字母顺序排列一起.,并..为好。(Arch Linux, Bash)

dai*_*isy 6

可能是由您的语言环境引起的,但如果您这样做:

LC_COLLATE=C ls -F --color=auto -l

点文件排序正确

  • 您可以在以下内容中找到有关整理的一些信息:[LC_COLLATE 是否(应该)影响字符范围?](http://unix.stackexchange.com/q/15980/606) (2认同)