Linux命令:ls
全称:list directory contents
用途:列举指定目录内的文件(目录)信息
格式:ls [-ABCFGHLOPRSTUW@abcdefghiklmnopqrstuwx1] [file ...]
类型:ls is hashed (/bin/ls)
说明:
Linux中文件(目录)记录的信息非常多,有查看需求时,全部列举出这些信息不太可能,也不太需要。ls 命令就是用来列举某个目录内的条目信息,方便查看的,这里所谓的"条目"就是文件或目录。
单纯的 ls 命令只会列举出非隐藏条目的名称信息,根据字母表顺序排序显示(额外补充一句:"-cftuvSUX" 参数或是 "--sort" 参数可以改变排序规则)。如果需要获取其它信息以及格式化输出信息时,需配合其它选项参数进一步获取。
常用选项参数:
-a, --all: 列举内容中包括以"."开头的条目,即包括当前目录、父目录、隐藏文件、隐藏目录四项。再通俗点儿,就是列举出所有条目,包括隐藏条目。
-A, --almost-all: 同"-a"参数一样,但是除去了"."(当前目录)和".."(父目录)这两个条目。
--author: 和"-l"连用,可以显示条目的创建者。
-b, --escape: 对于文件名(目录名)中的不可见字符,以C风格的转义字符形式显示。
--block-size=SIZE: 显示前,通过 SIZE 计算条目大小,例如:'--block-size=M',1M=1048576 bytes。SIZE 格式可以是单位或是数字,遵循以下规范:KB 1000, K 1024, MB 1000*1000, M 1024*1024, G T P E Z Y 单位同理。
-B, --ignore-backups: 不显示文件名(目录名)是以"~"结尾的条目信息。
-c: 根据改变时间 ctime(chang time) 排序显示条目(降序)。如果和选项参数 "lt" 一起连用,显示的时间是 ctime,排序的规则不变,还是 ctime(降序);如果和选项参数 "l" 一起使用,没有 "t" 选项参数,显示的时间是 ctime,排序的规则不再是 ctime,而是文件(目录)名。
-C: 按列输出,根据文件(目录)名纵向排序。
--color[=WHEN]: 控制输出颜色。默认值"always",也可以是"never"或者"auto"。
-d, --directory: 作用于目录,显示的是给定目录本身的信息,而不是给定目录内的条目信息。该参数不再进一步引用软链接(Symbolic Link),也就是说,如果作用于软链接,显示的是软链接本身的信息,不是软链接代表的真实文件的信息。
-D, --dired: 根据 Emacs' dired mode 生成输出信息
-f: 条目显示的时候不排序,在文件系统中是什么顺序就是什么顺序。等价于 "-aU"。
-F, --classify: 显示的时候,在某些条目名称后面追加一个标识符("*/=>@|"红色双引号中的一种),这样可以区分出条目类型。例如:可执行文件名后面追加"*",目录名后面追加"/",软链接文件名后面追加"@",socket文件后面追加"=",FIFO文件后面追加"|"。
-g: 和 "-l" 参数一样,只是少显示了条目的拥有者信息。
-G, --no-group: 在长列表中,不显示条目所属分组名称。
-h, --human-readable: 配合 "-l" 参数使用时,所占磁盘空间大小信息显示为人类可阅读的格式(例如:1K 234M 2G)。
-H, --dereference-command-line: 遇到软连接(Symbolic Link)条目的时候,软连接表示的信息是其指向的真实条目信息,不再是软连接本身的信息。
-i, --inode: 打印文件(目录)的索引节点号(inode 号)。
-I, --ignore=PATTERN: 不打印 Shell 正则表达式(shell PATTERN)匹配的条目信息。
-k, --kibibytes: 使用 1KB 的 block 。
-l: 使用长列表格式打印条目信息。
-L, --dereference: 解引用,遇到软连接的时候,显示软连接指向的真实文件信息,而不是软连接的信息。(与 -H 参数貌似是一样的作用,尚不清楚区别)
-m: 条目显示在一列中的时候,以逗号分隔。
-n, --numeric-uid-gid: 同 -l 参数,只是用户名和用户组名用 ID 表示。
-N, --literal: 打印条目的原始名称,对名称不做任何特殊处理(类似一些控制符号)。
-o: 同 -l 参数,但是不列举分组信息。
-p, --indicator-style=slash: 条目是目录的时候,在后面追加 "/"。
-q, --hide-control-chars: 用 ? 替代那些不可显示的控制符号。
-Q, --quote-name: 条目名称放在双引号内。
-r, --reverse: 含排序规则的时候,倒序显示。
-R, --recursive: 递归列举出所有目录及其子目录的文件信息。
-s, --size: 以 block 为单位,列举条目分配的空间大小。
-S: 根据条目所占空间大小排序。
-t: 根据条目修改时间排序,最近的在排在最前面。
-T, --tabsize=COLS:
-u: 和"-lt"连用时,显示访问时间并根据访问时间排序;和"-l"连用时,显示访问时间,根据名称排序;和其它的参数连用,根据访问时间排序。
-U: 不排序,以条目在目录中的顺序来展示。
-v: 根据文本中的版本号自然排序。
-w, --width=COLS: 假设一个显示屏幕宽度,不使用当前屏幕的实际宽度。
-x: 条目默认是按列排列,使用该参数后,按行排列。
-X: 根据条目的后缀名,按字母顺序排序。
-Z, --context: 显示每个文件的 SELinux 安全属性。
-1(数字1): 强制每个条目信息输出一行。当输出不是一个终端时, 这个选项参数是 ls 默认自带的。