用途
全称: ls - list directory contents
列出有关FILEs(默认情况下为当前目录)的信息。
如果未指定-ctuvSUX或--sort,则按字母顺序对条目进行排序。
语法
ls [OPTION]... [FILE]...
参数
一共有57个参数(日常工作中不需要记住全部参数,大部分参数只需要有基础印象,真正有此类需求时再翻阅即可。)
- -a, --all 不忽略隐藏文件 .
- -A, --almost-all 不列出当前路径的. 和上层路径的 ..
- --author 结合-l使用,打印每个文件的作者
- -b, --escape 打印非图形字符的C样式转义符
- --block-size=SIZE 结合-l使用, 打印时指定单位 例如:'--block-size=M';
- -B, --ignore-backups 不列出以 ~ 结尾的文件或文件夹
- -c
- 结合-lt使用: 显示修改文件状态信息的时间并按照此时间排序
- 结合-l使用: 显示修改文件状态信息的时间但是会按照名称排序
- 单独使用-c参数会按照修改文件状态信息的时间排序
- -C 按列列出条目
- --color[=WHEN]带颜色输出;
- 默认是'always'
- 可以设置'auto'
- 或'never'
- -d, --directory 列出目录本身
- -D, --dired 生成为Emacs的直接模式设计的输出
- -f 不排序,启用-aU,禁用-ls --color
- -F, --classify 将指示符(*/=>@|之一)附加到条目
- --file-type 同样,除了不要附加“*”
- --format=WORD
- across -x
- commas -m
- horizontal -x
- long -l
- single-column -1
- verbose -l
- vertical -C
- --full-time 类似-l --time-style=full-iso 但时间格式会改变
- -g 类似-l, 但不列出所有者
- --group-directories-first 将目录分组在文件之前;可以使用--sort选项进行扩充,但任何使用--sort=none(-U)都会禁用分组
- -G, --no-group 结合-l使用,在长列表中,不要打印组名
- -h, --human-readable 结合 -l 和 -s使用, 打印尺寸如1K 234M 2G等。
- --si 结合-l使用,使用1000而不是1024的幂
- -H, --dereference-command-line 遵循命令行上列出的符号链接
- --dereference-command-line-symlink-to-dir 遵循每个指向目录的命令行符号链接
- --hide=PATTERN 不要列出与shell模式匹配的隐含条目(由-a或-a覆盖)
- --hyperlink[=WHEN] 超链接文件名;
- WHEN可以是'always'(如果省略则为默认值)
- 'auto'
- 或'never'
- --indicator-style=WORD
append indicator with style WORD to entry names:- none (default),
- slash (-p),
- file-type (--file-type),
- classify (-F)
- -i, --inode 打印每个文件的索引号
- -I, --ignore=PATTERN 忽略某个文件
- -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 将条目名称用双引号括起来
- -r, --reverse 排序时颠倒顺序
- -R, --recursive 递归地列出子目录
- -s, --size 以块为单位打印每个文件的分配大小
- -S 按文件大小排序,先最大
- --sort=WORD 按WORD而不是名称排序:
- none
- time
- size
- extension
- version
- --time=WORD 结合-l使用时,将时间显示为WORD,而不是默认的修改时间:
- atime : 访问时间
- access
- use(-u)
- ctime 元数据修改时间
- status(-c)
- 如果--sort=time(最新的第一个),也使用指定的时间作为排序键
- --time-style=TIME_STYLE 结合-l使用 显示指定的时间/日期格式;请参阅下面的TIME_STYLE参数
- full-iso
- long-iso
- iso
- locale
- +FORMAT (e.g., +%H:%M) for a 'date'-style format
- -t 按修改时间排序,最新优先
- -T, --tabsize=COLS 假设选项卡在每个COLS处停止,而不是8个
- -u
- 结合 -lt:按访问时间排序并显示访问时间;
- 结合 -l:显示访问时间并按名称排序;
- 否则:按访问时间排序,最新优先
- -U 不排序;按目录顺序列出条目
- -v 文本中数字的自然排序
- -w, --width=COLS 将输出宽度设置为COLS。0表示没有限制
- -x 按行而不是按列列出条目
- -X 按条目扩展名的字母顺序排序
- -Z, --context 打印每个文件的任何安全上下文
- -1 每行列出一个文件。使用-q或-b避免“\n”
- --quoting-style=WORD 对条目名称使用引号样式WORD:文字、区域设置、shell、shell始终、shell转义,
shell escape always,c,escape(重写QUOTENG_STYLE环境变量)
注解:
SIZE
SIZE参数是一个整数和可选单位(例如:10K是10*1024)。单位为K、M、G、T、P、E、Z、Y
(1024次方)或KB、MB,。。。(1000的幂)。
TIME_STYLE
TIME_STYLE参数可以是完整的iso、长iso、iso、区域设置或+FORMAT。FORMAT的解释如下
在日期(1)。如果FORMAT为FORMAT1FORMAT2,则FORMAT1适用于非最近的文件,FORMAT2
到最近的文件。前缀为“posix-”的TIME_STYLE仅在posix区域设置之外生效。还有
TIME_STYLE环境变量设置要使用的默认样式。
color
使用颜色来区分文件类型在默认情况下是禁用的,并且使用--color=never时也是禁用的。具有
--color=auto,ls仅在标准输出连接到端子时才发出颜色代码。LS_COLORS
环境变量可以更改设置。使用dircolors命令进行设置。
示例
环境准备:
mkdir ls cd ls touch 1~ 1_? .1 for i in {1..10} ; do touch $i && sleep 1; done mkdir dir/a/b/c -p touch dir/a/b/c/1 ln 1 11 ln -s 2 12
# 不带任何参数
root@grafana:~/ls# ls
1 '1_?' 1~ 10 11 12 2 3 4 5 6 7 8 9 dir
# -a 显示隐藏文件
root@grafana:~/ls# ls -a
. .. .1 1 '1_?' 1~ 10 11 12 2 3 4 5 6 7 8 9 dir
# -A 显示隐藏文件但是不要显示当前目录(.)和上层目录(..)
root@grafana:~/ls# ls -A
.1 1 '1_?' 1~ 10 11 12 2 3 4 5 6 7 8 9 dir
#
# 结合-l使用的参数
--author
--block-size
-G
-h
总结
和时间相关的参数
参考文档
Linux中ls命令的用法详解 - 白蓝的橙 - 博客园 (cnblogs.com)
How does ls --tab-size work? - Unix & Linux Stack Exchange
标签:文件,--,条目,命令,ls,Linux,排序,列出 From: https://www.cnblogs.com/liushiya/p/18019215