对于刚接触 Linux 的新手来说,查看、列出当前目录下的文件与目录 是最基础、也是使用频率最高的操作。和 Windows 图形化鼠标点击查看文件不同,Linux 主要依靠命令行完成文件与目录的浏览,其中ls命令是核心工具。
熟练掌握ls命令的基础用法、长列表详情查看、文件列表过滤筛选,不仅能满足日常查看文件需求,更是后续 Linux 运维、服务部署、Shell 脚本编写、服务器管理的必备基础。本文将从零开始,详细讲解 Linux 列出文件和目录的三种核心方式:显示基本列表、显示长列表、过滤输出列表,搭配实操案例、参数解析和使用场景,适合零基础新手入门学习,可直接收藏当做常备参考手册。
一、ls 命令基础:显示基本列表
1.1 ls 命令作用
ls 是 Linux 系统中list的缩写,作用是列出当前工作目录下所有的文件、文件夹、可执行文件、隐藏文件等内容,是 Linux 最常用的内置基础命令。
1.2 基本语法
ls [选项] [目录路径]
- 不加选项、不加路径:默认列出当前所在目录的文件和目录
- 加上目录路径:可以直接列出指定路径下的内容,无需切换目录
1.3 显示基本列表(无参数用法)
直接在终端输入ls,回车即可显示当前目录简易文件列表:
ls
输出效果:只展示文件名和目录名,横向排列、简洁直观,不显示权限、大小、时间等额外信息。
1.4 终端颜色标识含义
Linux 终端默认自带颜色区分,新手一定要记住对应规则:
- 蓝色:普通目录
- 白色:普通文件
- 绿色:可执行文件
- 红色:压缩包 / 破损文件
- 浅蓝色:链接文件
- 黄色:设备文件
1.5 指定路径列出基本列表
不需要切换目录,直接后跟绝对路径 / 相对路径,即可列出目标目录内容:
# 列出/usr/bin目录文件
ls /usr/bin
# 列出上级目录文件
ls ..
注意:ls命令输出的列表是按字母排序的(按列排序不是按行排序)。如果使用的终端仿真器支持色彩显示,那么ls命令还可以用不同的颜色来区分不同类型的文件。LS_COLORS环境变量控制着这个特性。不同的Linux发行版会根据各自终端仿真器的能力来设置该环境变量,如果没有安装彩色终端仿真器,可以使用ls命令的-F选项来区分文件和目录
二、显示长列表:ls -l 详细信息解析
单纯ls基础列表只能看到文件名,无法查看文件权限、所属用户、文件大小、修改时间等关键信息,这时就需要使用长列表格式。
2.1 长列表核心命令
ls -l
-l 参数代表 long,以长格式、竖排方式展示文件和目录的完整详细信息。
2.2 ls -l 每一列字段完整解读
执行ls -l后输出共 7 列核心信息,逐个拆解:
drwxr-xr-x 2 root root 4096 May 8 10:20 test
- 第一列:文件类型与权限首位字符标识文件类型:
d:目录-:普通文件l:软链接文件b/c:设备文件后面 9 个字符分三组,分别代表所有者权限、所属组权限、其他用户权限(读 r、写 w、执行 x)。
-
第二列:硬链接数表示该文件或目录的硬链接计数,目录默认一般为 2。
-
第三列:所属用户名文件 / 目录归属的 Linux 系统用户。
-
第四列:所属用户组文件 / 目录归属的用户组。
-
第五列:文件大小默认单位为字节 Byte,目录固定显示 4096。
-
第六列:修改时间文件最后一次编辑、修改的日期和时间。
-
第七列:文件名 / 目录名
2.3 长列表常用组合参数
2.3.1 人性化显示大小 ls -lh
默认ls -l大小为字节,可读性差,搭配-h(human 人性化):
ls -lh
自动换算为 KB、MB、GB,适合日常查看文件大小。
2.3.2 显示隐藏文件长列表 ls -la
Linux 中以.开头的文件为隐藏文件 ,普通ls看不到:
ls -la
可以同时展示普通文件 + 隐藏文件的完整长列表信息。
2.3.3 递归列出所有子目录 ls -lR
ls -lR
递归遍历当前目录及所有子层级目录,全部以长列表形式展示。
三、过滤输出列表:精准筛选文件与目录
实际使用中,目录下文件数量繁多,我们往往不需要列出全部内容,只需要筛选指定类型、指定后缀、指定名称的文件,这就是过滤输出列表。
3.1 通配符 * 基础过滤
* 代表匹配任意多个字符,是过滤列表最常用的方式。
3.1.1 筛选指定后缀文件
只列出 .txt 文本文件:
ls *.txt
只列出 .log 日志文件:
ls *.log
只列出 .sh 脚本文件:
ls *.sh
3.1.2 筛选以指定字符开头的文件
列出以test开头的所有文件和目录:
ls test*
3.2 只过滤显示目录、不显示文件
只想列出当前目录下的所有文件夹,过滤掉普通文件:
ls -F | grep /
原理:ls -F 会在目录后自动加/,再通过grep过滤匹配含/的行。
3.3 只过滤显示隐藏文件
单独筛选所有隐藏文件(以.开头):
ls -d .*
3.4 结合管道 grep 高级过滤
搭配管道|和grep命令,实现更精准的模糊匹配过滤:
# 列出名称包含sys的所有文件和目录
ls | grep sys
# 长列表中过滤包含log的内容
ls -l | grep log
3.5 按时间 / 大小排序过滤
按修改时间排序(最新文件在前面)
ls -lt
按文件大小从大到小排序
ls -lS
倒序排列
ls -ltr
四、拓展实用搭配技巧
4.1 tree 树形展示目录结构
ls只能平铺展示,想要层级树形结构可以使用tree命令,未安装可执行:
# CentOS安装
yum install tree -y
# 使用
tree
4.2 绝对路径与相对路径结合 ls
无论当前在哪目录,用绝对路径可随时查看任意目录文件:
ls -lh /home
4.3 日常最常用组合命令汇总
# 简洁查看含隐藏文件
ls -a
# 详细信息+人性化大小
ls -lh
# 详细+隐藏+人性化大小
ls -lha
# 递归查看所有子目录详情
ls -lhaR
五、常见问题与注意事项
- 看不到隐藏文件 :普通
ls默认不显示.开头隐藏文件,加-a/-A参数即可。 - ls -l 大小看不懂 :必须搭配
-h参数,自动转换 KB/MB 单位。 - 过滤筛选无结果:检查文件名大小写,Linux 严格区分大小写。
- 权限不足无法列出 :部分系统目录普通用户无权限,会提示权限拒绝,可加
sudo执行。
六、总结
本文重点围绕 Linux 列出文件和目录三大核心用法:基本列表、长列表、过滤输出列表做了全面详解。
- 基本列表 :直接
ls使用,适合快速浏览文件名,简洁高效; - 长列表 :
ls -l查看权限、所有者、大小、时间等完整信息,-lh是日常最常用组合; - 过滤输出列表 :借助通配符
*、管道grep、排序参数,精准筛选所需文件,告别杂乱列表。
ls命令是 Linux 命令行的入门基石,熟练掌握基础查看、详细查看、过滤筛选三种用法,能够极大提升日常操作效率,也为后续学习目录管理、权限配置、Shell 脚本打下扎实基础。建议新手多在终端实操练习,熟记常用参数与过滤规则。