ls

ls - list directory contents
列出目录内容

格式:
ls [OPTION]... [FILE]...

常用选项:

  • -a:显示所有文件或目录(包括隐藏目录和.(当前目录),..(上级目录))
  • -A:同-a,但不显示.,..
  • -l:显示详细信息。包括:文件类型、权限、链接数、所属者、所属组、文件大小、上一次修改时间、文件名称
  • -r:将文件以相反次序显示。(默认使用字母排序)
  • -t:将文件依建立时间之先后次序列出,与当前最近时间为先
  • -F:在列出文件名称后加上符号;可执行文件加*,目录加/
  • -R:递归地列出子目录下文件
  • -h:与-l连用,使文件大小以人类可读方式显示(默认bytes)
  • -i:显示inode号

示例:

[root@node1 ~]# ls /tmp/   #显示tmp下的文件
aa  bb  cc  dd


[root@node1 ~]# ls -a /tmp/    #显示隐藏目录
.  .. aa  bb  cc  dd .gg   


[root@node1 ~]# ls -l /tmp/   #显示目录下文件详细信息,我们常用来查看文件的权限信息
total 8
-rw-r--r-- 1 root root 12 Jan 23 21:25 aa
-rw-r--r-- 1 root root 29 Jan 23 21:25 bb
-rw-r--r-- 1 root root  0 Jan 23 21:21 cc
drwxr-xr-x 3 root root 16 Jan 23 21:21 dd

[root@node1 ~]# ls /tm*/*a     #地址路径是可以使用glob通配符
/tmp/aa

[root@node1 ~]# ls -F /tmp/ | grep "/$"    #显示/tmp目录下有哪些目录
dd/


[root@node1 ~]# ls /tmp/| sed "s:^:`pwd`/:"   #显示绝对路径
/root/aa
/root/bb
/root/cc
/root/dd


[root@node1 ~]# ls -R /tmp/   #递归显示目录,和tree命令效果一致
/tmp/:
aa  bb  cc  dd

/tmp/dd:
ee

/tmp/dd/ee:
ff



[root@node1 ~]# ls -ltr /tmp/     #按文件创建时间排序,从老到新
total 8
-rw-r--r-- 1 root root  0 Jan 23 21:21 cc
drwxr-xr-x 3 root root 16 Jan 23 21:21 dd
-rw-r--r-- 1 root root 12 Jan 23 21:25 aa
-rw-r--r-- 1 root root 29 Jan 23 21:25 bb


[root@node1 ~]# ls -i /tmp/aa    #显示文件的inode号
17026541 /tmp/aa

总结:
ls基础命令之一,对其显示的每个字段都需要了解清楚。

原文地址:https://www.cnblogs.com/dance-walter/p/10318885.html