zzxworld

Linux ls 命令使用指南

Linux ls 命令使用指南

ls 是比较常用的 Linux 命令之一,用来查看目录下包含的文件信息。对于刚接触 Linux 的朋友来说,也是一个必须要掌握的命令。

ls 命令格式

ls [选项] [文件名...]

ls 命令最后的「文件名」部分是可以省略的,默认为 .,代表当前目录。并以文件名比较顺序排序。ls 命令会输出到 stdout,也就是标准输出。

ls 命令示例

显示当前目录下的文件信息:

ls

显示 /etc 目录下的文件信息:

ls /etc

显示文件更多信息,包含权限,用户名,用户组以及文件大小和时间信息:

ls -l

显示目录下所有子目录的文件信息:

ls -R

ls 命令选项

缩写 完整名称 说明
-a --all 不隐藏任何以 . 开始的项目。
-A --almost-all 列出除 ... 以外的任何项目。
--author -l 同时使用时,列出每个文件的作者。
-b --escape 以 C 风格的转义序列表示不可打印的字符。
--block-size=大小 -l 同时使用时,将文件大小以此处给定的大小为单位进行缩放。例如 --block-size=M
-B --ignore-backups 不列出任何以 ~ 字符结束的项目。
-c -lt 共同使用时,根据 ctime 排序并显示 ctime(文件状态最后更改的时间)。与 -l 共同使用时,显示 ctime 并按照名称排序。 其它情况按照 ctime 排序,最新的最前。
-C 每栏由上至下列出项目。
--color[=WHEN] 控制是否使用带颜色的输出。WHEN 可以是 always(默认缺省值)、autonever
-d --directory 当遇到目录时列出目录本身而非目录内的文件。
-D --dired 产生适合 Emacs 的 dired 模式使用的结果。
-f 不进行排序,-aU 选项生效,禁用 -ls --color
-F --classify 加上文件类型的指示符号(*/=@| 其中一个)。
--file-type 类似,但不后缀 * 字符。
--format=关键字 交错 -x,逗号分隔 -m,水平 -x,长 -l, 单栏 -1,详细 -l,垂直 -C
--full-time 类似 -l --time-style=full-iso
-g 类似 -l,但不列出所有者。
-group-directories-first 在文件前分组目录。此选项可与 --sort 一起使用,但是一旦使用 --sort=none 将禁用分组。
-G --no-group 以一个长列表的形式,不输出组名。
-h --human-readable -l-s 一起,以易于阅读的格式输出文件大小(例如 1K 234M 2G等)。
--si 同上面类似,但是使用 1000 为基底而非 1024。
-H --dereference-command-line 跟随命令行列出的符号链接。
--dereference-command-line-symlink-to-dir 跟随命令行列出的指向目录的符号链接。
--hide=PATTERN 隐藏符合 shell PATTERN 模式的项目 (-a-A 将覆盖此选项)。
--hyperlink[=WHEN] 文件名使用超链接;WHEN 可以是 always (缺省时的默认选项)、autonever
--indicator-style=方式 指定在每个项目名称后加上指示符号方式:none(默认)、slash(-p)、file-type--file-type)以及 classify-F)。
-i --inode 显示每个文件的索引编号(inode 号)。
-I --ignore=模式 不显示任何匹配指定 shell 模式的项目。
-k --kibibytes 默认使用 1024 字节的块显示磁盘使用量;只用于 -s 和每个目录的总计。
-l 使用较长格式列出信息。
-L --dereference 当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息。
-m 所有项目以逗号分隔,并填满整行行宽。
-n --numeric-uid-gid 类似 -l,但列出用户和组的 ID 号。
-N --literal 输出未经引号括起的项目名称。
-o 类似 -l,但不列出有关组的信息。
-p --indicator-style=slash 对目录附加 / 作为指示符号。
-q --hide-control-chars ? 字符代替无法打印的字符。
--show-control-chars 原样显示无法打印的字符(这是默认行为,除非被调用本程序的名称是 ls 而且是在终端中进行输出)。
-Q --quote-name 将条目名称括上双引号。
--quoting-style=方式 使用指定引用的方式显示条目的名称: literal, locale, shell, shell-always, shell-escape, shell-escape-always, c, escape (该选项优先于 QUOTING_STYLE 环境变量的配置)。
-r --reverse 逆序排列。
-R --recursive 递归显示子目录。
-s --size 以块数形式显示每个文件分配的尺寸。
-S 按文件大小而不是字典序排序目录内容,大的文件靠前。。
--sort=WORD 按指定方式排序。可用值和参考选项:none(-U), size(-S), time(-t), version(-v), extension(-X)。
--time=WORD 设置输出的文件时间类型。可用值:atimectime, birth
--time-style=TIME_STYLE 使用 -l 时显示的时间/日期格式。
-t 按时间排序,最新的最前。
-T --tabsize=COLS 指定制表符的宽度,默认为 8 字符。
-u -lt 一起使用:按照访问时间排序并显示; 同 -l 一起使用:显示访问时间并按文件名排序其它:按照访问时间排序,最新的最靠前。
-U 不进行排序;按照目录顺序列出项目。
-v 在文本中进行数字的自然排序。
-w --width=COLS 设置输出宽度为 COLS 对应的值。0 代表无限制。
-x 逐行列出项目而不是逐栏列出。
-X 根据扩展名按字母顺序排序。
-Z --context 输出每个文件的所有安全上下文信息。
-1 每行只列出一个文件。与 -q-b 共用时避免 \n
--help 显示此帮助信息并退出。
--version 显示版本信息并退出。