且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Linux基础命令---ls

更新时间:2021-12-12 04:13:51

ls
      显示当前目录下的所有内容。
      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
      ls  [OPTION]... [FILE]...

2、选项列表
      --version
            显示命令版本信息
      --help
            显示帮助文档
      -a | --all
            列出所有的文件
      -A | --almost-all
            列出所有文件,但是不包含以 . 或者 .. 开头的文件
      --author
            和“-l”一起使用,打印出每个文件的作者
      -b | --escape
            将文件名中不可输出的字符,以“\+字符编码”的方式输出。编码为八进制
      --block-size=SIZE
            设置block的字节
      -B | --ignore-backups
            不要列出以“~”结尾的隐含条目,其实就是备份文件
      -c
            和“–lt”一起使用的时候,按照文件状态改变的时间排序;和“-l”一起使用的时候,通过名字排序
      -C
            多列显示结果,默认选项
      --color[=WHEN]
            以高亮颜色显示不同文件,值可以是always、never、auto
      -d | --directory
            只显示目录名,不显示目录下的内容。不显示符号链接指向的目录
      -D | --dired
            为Emacs的dired模式设计的输出
      -f
            不排序,使能“-aU”,关闭“-ls -color”
      -F | --classify
            在每个输出项的后面,追加文件类型标识符。
            *,代表具有可执行权限的普通文件。
            /,代表目录。
            @,代表符号链接。
            |,代表有名管道。
            =,代表套接字。
      --file-type
            和“-F”一样,但是不输出*
      --format=WORD
            跨越-x,逗号-m,水平-x,长-l,单列-1,详细-l,垂直-c
      --full-time
            显示完整的时间,-l --time-style=full-iso
      -g
            和“-l”一样,但是不显示拥有者
      --group-directories-first
            将文件前的目录分组,但是“--sort”的任何使用都会禁用分组。
      -G | --no-group
            在长列表中,不要打印组名
      -h
            以更加易读的方式显示,和“-l”一起使用
      -si
            和“-h”一样,但是以1000位整,而不是1024
      -H | --dereference-command-line
            遵循命令行中列出的符号链接
      --dereference-command-line-symlink-to-dir
            遵循指向目录的每个命令行符号链接
      --hide=PATTERN
            不要列出与shell模式匹配的隐含条目(被-a或-A覆盖)
      --indicator-style=WORD
            将带有样式字的指示符附加到条目名称:无(默认)、斜杠(-p)、文件类型(-文件类型)、分类(-F)
      -i
            显示文件的索引节点
      -I | --ignore=PATTERN
            不要列出与shell模式匹配的隐含条目
      -k
            等价于“--block-size=1K”
      -L | --dereference
            当显示符号链接的文件信息时,请显示链接引用文件的信息,而不是链接本身的信息。
      -l
            以长格式显示
      -m
            用水平的方式显示,文件之间用“,”和一个空格隔开
      -n | --numeric-uid-gid
            类似-l,但是列出用户ID和组ID。
      -N | --literal
            打印原始条目名(不要专门处理控制字符)
      -o
            和选项“-l”一样,但是不显示组信息
      -p | --indicator-style=slash
            在目录前面加一个斜杠“/”
      -q | --hide-control-chars
            无法显示的字符,使用“?”代替
      --show-control-chars
            按原样显示非图形字符
      -Q | --quote-name
            用双引号括住条目名
      --quoting-style=WORD
            对条目名使用引用样式词:literal,locale,shell,shell-always,c,escape
      -r | --reverse
            排序的时候,以文件名反向排序
      -R | --recursive
            递归显示子目录
      -s | --size
            以块为单位显示文件大小。默认一块1024k
      -S
            以文件大小排序
      -t
            按文件的修改时间,降序排列
      --sort=WORD
            按指定要求排序,而不是按名称排序:不排序(-U),扩展名(-X),大小(-S),时间(-t),版本(-v)
      --time=WORD
            配合“-l”使用,将时间显示为指定的,而不是修改时间:atime(-u),access(-u),use(-u),ctime(-c),或state(-c);如果指定了“--sort=time”,则使用指定的时间作为排序键。
      --time-style=STYLE
            配合“-l”使用,时间用指定的风格显示:full-iso,long-iso,locale,+FORMAT。FORMAT解释为“日期”;如果格式为      FORMAT1<newline>FORMAT2,FORMAT1适用于非最近文件,FORMAT2适用于最近文件;如果样式以“POSIX-”为前缀,则样式仅在POSIX区域设置之外生效。
      -T | --tabsize=COLS
            指定制表符的大小,默认是8
      -u
            配合“-lt”使用:按访问时间排序,并显示;配合“-l”使用:显示访问时间,按名称排序;其他情况:按访问时间排序
      -U
            不要排序;按目录顺序列出条目
      -v
            文本中自然排序的(版本)数字
      -w | --width=COLS
            设定屏幕宽度而不是当前值
      -x
            按行而不是按列出条目
      -X
            按输入扩展名按字母顺序排序
      -1
            每行列出一个文件
      --lcontext
            显示安全上下文。启用“-l”。对于大多数显示器来说,行可能太宽了。
      -Z, --context
            显示安全上下文,以便适合大多数显示。只显示模式、用户、组、安全上下文和文件名。。
      --scontext
            只显示安全上下文和文件名。

3、说明
      在默认情况下,使用颜色来区分文件类型是禁用的,并且使用“--color=never“。只有当标准输出连接到终端时,ls才会发出颜色代码。LS_CONERS环境变量可以更改设置,使用dircolors命令来设置。
      大小可以是KB,1000; K,1024,;MB,1000*1000;M,1024*1024

4、实例
1)显示所有文件,并且在后面追加文件类型
      [root@localhost weijie]# ls -lF
      总用量 1072
      -rw-r--r-- 1 root root      0 9月   7 09:11 1.c
      -rw-r--r-- 3 root root 358400 9月   7 15:46 link
      -rw-r--r-- 3 root root 358400 9月   7 15:46 link1
      lrwxrwxrwx 1 root root      6 9月  10 12:13 link2 -> my.iso
      -rw-r--r-- 3 root root 358400 9月   7 15:46 my.iso
      drwxrwxrwx 2 root root   4096 9月  10 11:33 test/
      drwxr-xr-x 2 root root   4096 9月  10 16:10 test02/
      drwxr-xr-x 2 root root   4096 9月  10 11:35 testt/
      -rw------- 1 root root      0 9月   7 14:55 wj234.q1C
      drwx------ 2 root root   4096 9月   7 14:50 wjtpflR/
2)显示目录名称,不显示目录下的内容
      [root@localhost /]# ls /weijie/                //列出weijie目录下的所有文件
      1.c  link  link1  link2  my.iso  test  test02  testt  wj234.q1C  wjtpflR
       [root@localhost /]# ls -ld /weijie/          //只显示weijie这个目录本身的信息
      drwxr-xr-x 6 root root 4096 9月  10 15:28 /weijie/
      [root@localhost /]#