文章更新于:2020-03-02
注:本文参照 man ls 手册,并给出使用样例。
文章目录
- 一、命令之`ls`
- 二、命令实践
- 1、`ls -a` 或 `ls --all`
- 2、`ls -A` 或 `ls --almost-all`
- 3、`ls --author`
- 4、`ls -b` 或 `ls --escape`
- 5、`ls --block-size=M`
- 6、`ls -B` 或 `ls --ignore-backups`
- 7、`ls -c`
- 8、`ls -C`
- 9、`ls --color[=WHEN]`
- 10、`ls -d`
- 11、`ls -D` 或 `ls --dired`
- 12、`ls -f`
- 13、`ls -F` 或 `ls --classify`
- 14、`ls --full-time`
- 15、`ls -h` 或 `ls --human-readable`
- 16、`ls --hide=PATTERN`
- 17、`ls -l`
- 18、`ls -t`
- 19、`ls --sort=WORD`
- 三、Enjoy!
一、命令之ls
1、名字及介绍
ls -列出目录内容
ls
程序主要是列出文件或目录的信息。
如果不指定参数,也就是只执行ls
,则默认列出当前目录的信息,且不递归,不显示以.
开头的隐藏文件。
2、语法格式
ls [选项]... [文件或目录]...
3、输出内容示例
如执行ls -l
则会看到类似下图的输出,他们的含义如图。
4、参数
列出关于文件的信息(默认是当前目录),当你没有指定 -cftuvSUV
或 --sort
参数的时候按字母表顺序排列。
调用参数时,使用长格式和短格式都是合法的。
短格式 | 长格式 | 描述 |
---|---|---|
-a | - -all | 列出所有文件,包括以点开头的 |
-A | - -almost-all | 列出所有文件,不包括以点开头的 |
- -author | 和-l 配合使用,列出每个文件的作者 | |
-b | - -escape | 以八进制溢出序列表示不可打印的字符 |
- -block-size=SIZE | 以指定的单位显示文件大小 | |
-B | - -ignore-backups | 不列出以~ 结尾的备份文件 |
-c | 配合-lt 显示并以ctime 排列;配合 -l 显示ctime 并亦文件名排列;否则,以 ctime 排列,最新排第一 | |
-C | 按列显示文件(和单独使用ls 一个效果) | |
- -color[=WHEN ] | 着色显示结果;WHEN 可选never 、auto 、always (默认) | |
-d | - -directory | 如果是目录,则列出目录自身信息,而不是他们的内容q |
-D | - dired | 生成为 Emacs 设计的dired 模式输出结果 |
-f | 不排序,相当于调用-aU ,禁用-ls --color | |
-F | - -classify | 为每个文件添加分类指示符,*/=>@! 中的一种 |
- -file-type | 同上,但不添加* | |
- -format=WORD | 输出显示格式化,WORD 可选verbose 、long 、commas 、horizontal 、across 、vertical 、single-column 、context | |
- -full-time | 等价于 -l --time-style=full-iso | |
-g | 等价于-l ,但是不列出文件的所有者 | |
- - group-directories-first | 在所有文件之前输出目录 | |
-G | - - no-group | 等价于-l ,但是不列出文件的组名 |
-h | - -human-readable | 配合-l 使用,输出像1k,23M,2G 这样友好的文件大小单位 |
- -si | 同上,但使用1000 进制,而不是1024 进制 | |
-H | - -dereference-command-line | 列出符号文件的真正位置 |
- -dereference-command-line-symlink-to-dir | 列出符号目录的真正位置(存疑) | |
- -hide=PATTERN | 不列出PATTERN 匹配到的文件 | |
- -indicator-style=WORD | 添加指示符,可选none(default) 、slash(-p) 、file-type(- -file-type) 、classify(-F) | |
-i | - - inode | 输出每个文件的索引数字 |
-I | - -ignore=PATTERN | 不列出pattern 匹配到的项 |
-k | - -kibibytes | 默认以K 字节 的形式表示文件的大小 |
-l | 使用长格式输出信息 | |
-L | - -dereference | 显示符号链接引用的文件的信息,而不是链接自身的信息 |
-m | 用逗号分割项目 | |
-n | - -numeric-uid-gid | 等价于-l ,但显示用户id 和组id |
-N | - -literal | 显示原始条目名,不做特殊处理(比如控制字符) |
-p | - -indcator-style=slash | 在目录名后面添加/ |
-q | - -hide-control-chars | 将非图形化字符显示为? |
- -show-control-chars | 显示非图形化字符,是什么就显示什么 | |
-Q | - -quote-name | 使用双引号括起来项目名 |
- -quoting-style=WORD | word 可选 literal, locale, shell, shell-always, c, escape | |
-r | - -reverse | 如果排序则反向排 |
-R | - -recursive | 递归显示子目录内容 |
-s | - -size | 输出文件已分配的块大小 |
-S | 以文件大小排列 | |
- -sort=WORD | 根据none(-U) 、size(-S) 、time(-t) 、version(-v) 、extension(-X) 排列项 | |
- -time=WORD | 配合-l 使用,展示访问时间 atime-u ,状态时间 ctime-c ,而不是默认的修改时间 mtime,当然也可以指定以时间排序 --sort=time | |
- -time-style=STYLE | 配合-l 使用,展示full-iso 、long-iso 、iso 、locale ,或者+FORMAT ,… | |
-t | 以修改时间 mtime 排列,最新的放第一 | |
-T | - -tabsize=COLS | 指定tab 值来代指默认值 8 |
-u | 配合 -lt 使用,展示并以 atime 排列;配合 -l 使用,展示 atime,以文件名排列;否则,以 atime 排列 | |
-U | 不排列,按目录顺序列出条目 | |
-v | 文本中自然的(版本)数字排序 | |
-w | - -widdth=COLS | 手动指定屏幕宽度 |
-x | 以行为单位列出而非以列 | |
-X | 以文件扩展名的字母顺序排列 | |
-1 | 按每个一行排列 |
SELinux 参数:
短格式 | 长格式 | 描述 |
---|---|---|
- -lcontext | 显示安全内容 | |
-Z | - -context | |
- -scontext | 仅显示安全信息和文件名 | |
- -help | 显示帮助信息 | |
- -version | 显示版本信息 |
二、命令实践
1、ls -a
或 ls --all
注:列出所有文件,包括 .
和 ..
2、ls -A
或 ls --almost-all
注:列出所有文件,但不包括 .
和 ..
3、ls --author
注1:配合 -l
使用列出文件的作者。
注2:有时候文件的作者和所有者是不一样的。
4、ls -b
或 ls --escape
5、ls --block-size=M
6、ls -B
或 ls --ignore-backups
7、ls -c
补充:
ls -l
内容更改时间:modification time(mtime) 指文件内容发生改变的时间;
ls -l --time=ctime
状态更改时间:status time(ctime) 指文件的权限或属性发生改变的时间;
ls -l --time=atime
最近访问时间:access time(atime) 指文件最近被读取的时间;
8、ls -C
9、ls --color[=WHEN]
10、ls -d
11、ls -D
或 ls --dired
12、ls -f
13、ls -F
或 ls --classify
补充:
普通文件:没有
普通可执行文件:*
目录:/
符号链接:@
FIFOs管道文件:|
套接字文件:=
doors:>
14、ls --full-time
15、ls -h
或 ls --human-readable
16、ls --hide=PATTERN
17、ls -l
18、ls -t
补充综合:
下表中的等价于
列中的ctime
可用status
替换,atime
可用access
或use
替换。
命令 | 显示内容 | 排列顺序 | 等价于 |
---|---|---|---|
ls -l | 显示mtime | 以文件名排列 | |
ls -lt | 显示mtime | 以mtime 排列 | |
ls -c | 不显示ctime | 以ctime 排列 | ls --time=ctime |
ls -cl | 显示ctime | 以文件名排列 | ls -l --time=ctime |
ls -clt | 显示ctime | 以ctime 排列 | ls -lt --time=ctime |
ls -u | 不显示atime | 以atime 排列 | ls --time=atime |
ls -ul | 显示atime | 以文件名排列 | ls -l --time=atime |
ls -ult | 显示atime | 以atime 排列 | ls -lt --time=atime |
使用样例
19、ls --sort=WORD
WORD
可选none
、time
、size
、extension
、version