ls 手册页说:
List information about the FILEs (the current directory by
default). Sort entries alphabetically if none of -cftuvSUX nor --sort
is specified.
Run Code Online (Sandbox Code Playgroud)
和
-a, --all do not ignore entries starting with .
Run Code Online (Sandbox Code Playgroud)
和
-1 list one file per line.
Run Code Online (Sandbox Code Playgroud)
但
/bin/ls -a1
Run Code Online (Sandbox Code Playgroud)
按文件名的字母顺序列出条目并带有任何前导 .删除,这不是按字母顺序排列的。
该sort命令执行相同的操作。
有什么方法可以ls正常工作(.首先使用文件 - 这也不是字母顺序)?
ste*_*ver 11
顺序由您的语言环境的整理顺序决定。
前任。在我的默认语言环境中(即en_CA.UTF-8)
$ ls -A1
a
.b
c
Run Code Online (Sandbox Code Playgroud)
而在C当地
$ LC_COLLATE=C ls -A1
.b
a
c
Run Code Online (Sandbox Code Playgroud)
(我用-A而不是-a消除.和..目录)。
获得所需顺序的另一种方法可能是使用-v(version sort) 选项,如将隐藏文件和目录与 ls 分组中所建议的那样- 尽管这并不是它真正的用途:
Run Code Online (Sandbox Code Playgroud)-v natural sort of (version) numbers within text
由于ls几乎可以肯定已经在您的.bashrc文件中设置了别名,您可以简单地修改那里的别名以包含-v.
| 归档时间: |
|
| 查看次数: |
731 次 |
| 最近记录: |