Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

ls命令是Linux中最常用的命令之一。在命令行提示符下,直接输入ls命令,不带任何选项,将列出当前目录下所有文件和目录,但是不会显示详细的信息,比如,文件类型、大小、修改日期、和时间、权限等等。
Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 使用【-1】 选项,将每行显示一条记录:Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录
    注意:????上面是 杠数字1,并不是-L(故意大写的)

  • 使用-l(现在是英文)选项,将以长列表格式显示文件和目录,包括文件类型、大小、修改日期和时间、权限等:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录
    从上面的输出可以看出每航有7个字段,接下来说说每段的含义:
    • 第一个字符(不是字段哦):代表文件类型。在上面的例子中,第一个字符有的是连字符“-”,有的是字母“d”。使用ls -l命令的输出中,第一个字符可能有如下的几种情形:
      -:普通文件;
      d:目录;
      s:套接字文件;
      l:链接文件;
    • 字段1: 文件权限。接下来的9个字符指示文件的权限。每3个字符分别涉及所有者、用户组、和其他用户的读写执行权限。例如,rw-r----- 表示所有者有读写权限,用户组有读权限,而其他用户没有任何权限。
    • 字段2:链接数。1表示只有一个链接到此文件;
    • 字段3:所有者。在上例中,文件的所有者均为williamslife;
    • 字段4:用户组。在上例中,文件的用户组均为williamslife;
    • 字段5:文件大小。默认输出的大小单位是字节。
    • 字段6:文件最后一次被修改的时间。例如上例中,文件hello.php最后一次被修改的时间是5月23日13:58
    • 字段7:文件名。

  • 使用-lh选项可以将文件大小显示为符合人类阅读习惯的格式;
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 使用-F选项,将使用不同的特殊字符归类不同的文件类型:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录
    如上例所示:
    • / :表示目录;
    • 无特殊字符:表示普通文件;
    • @:表示链接文件;
    • *:表示可执行文件;
      注意:你也可以使用ls --color=auto命令,将不同的文件类型显示为不同的颜色,或将–color与F选项联合使用。

  • 联合使用-ld选项,可以以上列表格式列出某个目录的信息:

bogon:test williamslife$ ls -ld
drwxr-xr-x 7 williamslife staff 224 5 23 13:58 .
bogon:test williamslife$


  • 使用R选项,将递归的列出子目录的内容:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 联合使用-ltr选项,将以长列表格式按文件或目录的修改时间倒序地列出文件和目录:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 联合使用-ls选项,将以长列表格式按文件大小顺序列出文件和目录:

bogon:test williamslife$ ls -ls
total 0
0 drwxr-xr-x 3 williamslife staff 96 5 23 16:12 dir1
0 drwxr-xr-x 2 williamslife staff 64 5 21 14:58 dir2
0 drwxr-xr-x 2 williamslife staff 64 5 21 14:58 dir3
0 -rw-r–[email protected] 1 williamslife staff 0 5 23 13:58 hello.php


  • 使用-a选项,将列出包括隐藏文件或目录在内的所有文件和目录,包括“.”(当前目录)和“…”(父目录):
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 使用-A选项,将列出包括隐藏文件或目录(不包括 .和. .)在内的所有文件和目录:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录

  • 使用-i选项,将显示文件或目录的inode编号,又是在系统维护操作时,你可能想知道文件的inode编号:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录
    注意:在find命令中,你可以使用inode编号移除文件名中含有特殊字符的文件。

  • 使用-n选项,其输出的内容类似于-l选项,指示显示uid和gid,替代显示所有者和用户组:
    Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录