Linux ls 命令列出文件目录
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 命令。如果您有任何问题或反馈,请随时发表评论。