ls命令是Linux用户应该知道的基本命令之一。它用于列出文件系统的文件目录的信息。

ls 命令是 GNU 核心命令的一部分,它安装在所有Linux发行版上。在本教程中,我们将通过实例和最常见的 ls 命令选项的详细向您展示如何使用 ls 命令。

包括查看文件权限,修改时间,大小,排序,显示隐藏文件,排序ls输出,递归列出子目录。

ls 命令详解

ls 命令的语法形式是 ls [OPTIONS] [FILES]OPTIONS 是 ls 命令的选项,可选参数,FILES 可以是一个或者多个文件目录,多个文件目录请使用空格进行分隔。

在不指定任何参数运行 ls 命令时,ls 命令将列出当前工作目录的所有文件。文件按字母顺序列出。

要列出指定目录的文件,请将目录的路径传递给 ls 命令。例如命令 ls /etc 列出/etc目录的内容。

如果当前登录的用户没有对该目录的读取权限,终端将会打印权限拒绝错误消息 ls: cannot open directory '/root': Permission denied 指示 ls 命令无法打开该目录。

ls

ls /etc

ls /etc /var /etc/passwd

ls /root

查看文件信息

ls 命令默认情况下仅列出文件目录的名称,包含的文件信息并不多。如需要查看文件的更多信息,可以使用 ls 命令的 -l 选项已长列表格式打印文件。

当使用长列表格式时,ls 命令将显示文件类型,权限,硬链接数,所有者,所属组,文件大小,日期和时间,文件名。

ls -l /etc/hosts
-rw-r--r-- 1 root root 337 Oct  4 11:31 /etc/hosts

第一个字符表示文件类型。在此教程是字符是 - 表示文件。在 Linux 有很多文件类型,这些类型包括。

- 普通文件,b 块设备文件,c 角色文件,d 目录,l 符号链接,n 网络文件,p FIFO,s socket套接字文件。

接下来九个字符 rw-r--r– 表示文件权限。前三个字符用于表示用户权限,后三个表示组的权限,最后三个表示其他用户的权限。

可以使用 chmod 命令修改文件权限,权限字符的值可以是:r 读取权限,w 写入权限,x 执行权限,s setgid 位,t 粘性位。

在本教程的示例中,rw-r--r-- 表示用户可以读取和写入文件,而组和其他人只能读取文件。数字 1 表示硬链接到文件的数量。

接下来的两个字段 root root 显示文件所有者和所属组,后跟文件的大小 337,以字节为单位。如果要以可读的格式打印大小,请使用 ls 命令的 -h 选项。

Oct 4 11:31 是文件修改日期和时间,最后一列是文件的名称。

查看隐藏文件

默认情况下,ls 命令不会列出隐藏文件。在 Linux,隐藏文件是以点.开头的所有文件。

要显示所有文件,包括隐藏文件,请使用 ls 命令的 -a 选项。通常,我们在运行 ls 命令时还使用 -l 选项显示所有文件的详细信息。

ls -la ~/
drwxr-x--- 10 myfreax  myfreax  4096 Feb 12 16:28 .
drwxr-xr-x 18 myfreax  myfreax  4096 Dec 26 09:21 ..
-rw-------  1 myfreax  myfreax  1630 Nov 18  2017 .bash_history
drwxr-xr-x  2 myfreax  myfreax  4096 Jul 20  2018  bin
drwxr-xr-x  2 myfreax  myfreax  4096 Jul 20  2018  Desktop
drwxr-xr-x  4 myfreax  myfreax  4096 Dec 12  2017 .npm
drwx------  2 myfreax  myfreax  4096 Mar  4  2018 .ssh

排序输出

正如前面已经提到的,默认情况下,ls 命令按字母顺序列出文件。要使用其它的方式排序 ls 命令的输出。

可以使用ls 命令的 -X 选项按文件扩展名的字母顺序进行排序。-S 选项按文件大小排序, -t 选项按文件修改时间排序,-v 文本中的自然类型数字排序。

如果要以反向排序打印 ls 命令的输出,请使用 ls 命令的 -r 选项。例如命令 ls -ltr /var 按修改时间反向对/var目录文件进行排序。

ls -ltr /var

递归列出子目录

如需要使用 ls 命令递归列出子目录的所有文件,请使用 ls 命令的 -R 选项。

ls -R

结论

至此,你应该熟悉并且理解如何在 Linux 使用 ls 命令。如果您有任何问题或反馈,请随时发表评论。