列出文件是普通 Linux 用户和系统管理员最常执行的任务之一。 在 Linux 中,ls 命令是 "list "的缩写,用于列出或显示目录的内容。这个目录可以是你的当前目录,也可以是系统中的任何其他目录。 该命令同时显示文件和子目录,并在大多数情况下使用颜色代码区分不同的文件类型。在没有任何命令行选项的情况下,ls 命令只会列出所有目录的内容。 不过,它提供了一系列方便的命令行选项来操作输出并显示所需的输出。
在本文中,我们将讨论 ls 命令的基础示例,以及它在 Linux 中提供的所有可用的各种命令选项。
Linux 中的 ls 命令选项:
ls [ options ] /path/to/directory
选项部分表示可用于操作命令输出的命令行参数。
以下为 ls 命令参数:
选项 | 描述 | 选项 | 描述 | 选项 | 描述 |
|---|---|---|---|---|---|
ls -m | 列出用逗号分隔的目录内容 | ls -a | 显示包括隐藏文件在内的所有文件 | ls -F | 在目录中添加正斜线 |
ls -Q | 显示用引号括起来的目录内容 | ls *. | 根据文件扩展名过滤文件 | ls -X | 按文件扩展名字母排序 |
ls -l | 以长列表格式显示文件 | ls -la | 以长列表格式显示所有文件和目录 | ls -i | 显示文件和目录的 inode 编号 |
ls -lh | 以人类可读格式显示文件大小 | ls -R | 递归显示文件和目录 | ls -tl | 根据文件创建日期和时间显示文件 |
ls -g | 省略组所有权列 | ls -r | 反向排序文件 | ls -n | 列出 UID 和 GID |
在不传递任何命令行选项或参数的情况下运行 ls 命令,ls 命令只会按字母顺序列出目录内容。 在这里,我们无法查看文件类型、大小、修改日期和时间、权限和链接等详细信息。
ls
通过 -l 命令选项,可以以列格式打印出目录内容的详细信息,包括大小、修改日期和时间、文件或目录名称、文件所有者及其权限。
ls -l
从最左边开始:
第 1 列 - 文件/目录权限。
第 2 列 - 链接数量。
第 3 列 - 所有者名称。
第 4 列 - 文件所属组的名称。
第 5 列 - 文件大小(字节)。
第 6 列至第 8 列 - 最后修改日期。
第 9 列 - 文件/目录名。
隐藏文件是存储用户设置和配置文件的特殊文件,运行中的程序和服务会使用这些文件来读取和存储信息。
例如,.bashrc 文件是一个脚本,其中包含当前登录用户的用户设置和配置,包括命令别名、shell 历史记录、终端字体颜色等。
.bash_logout 文件在注销 bash 会话时执行。 它主要用于清理目的,即在退出 bash shell 后执行任何需要执行的操作。
要列出隐藏的文件,请使用 -a 选项,如图所示,它既能显示隐藏的文件,也能显示隐藏的目录。
ls -a正如你所注意到的,-a 选项不仅会列出隐藏文件,还会列出所有文件和目录。为了更好地查看,可以使用 -la 选项
ls -la
要以更好的格式显示输出结果,可添加 -h 标志,以人类可读的格式打印文件大小。 从输出结果来看,文件大小以千字节、兆字节和千兆字节显示。 无论如何,这样看起来更美观。
ls -lh
在运行 ls 命令时,使用 -F 选项为目录添加了一个正斜线(/),使其更容易与其他文件区分开来。
ls -F
默认情况下,ls 命令按字母顺序(从 A - Z)对文件和目录进行排序。 你可以选择使用 -r 选项按相反顺序对目录内容进行排序。

此外,还可以使用 -X 标志按字母顺序对文件扩展名进行排序。
-R 标志以递归方式列出文件。 首先,命令会列出当前目录下的所有文件和目录,然后继续显示各个目录和子目录下的文件。
ls -R
ls -ltr 命令以长列表格式显示按修改时间反向排序的文件,这意味着它会根据最后修改日期/时间戳,以反向顺序显示每个文件或目录的详细信息。
ls -ltr
可以使用 -t 选项按时间和日期对文件进行排序,该选项会按照从最新到最旧的顺序对文件进行排序。
ls -lt
结合 -lS 选项,它将按降序(文件大小从大到小)显示文件大小。
ls -lS
使用 -i 选项可以显示文件和目录的 inode 编号。
ls -i
使用 -m 标志会逐个列出目录内容,并用逗号分隔。
ls -m
使用 -Q 标志时,所有目录内容都用双引号括起来,如图所示。
ls -Q
当与 -l 命令选项一起使用时,ls 命令会同时打印文件的用户所有权和组所有权。你可以通过 -g 选项省略组列。
ls -g
要列出特定的文件类型或扩展名,请使用通配符 (*) 并在后面跟上文件扩展名。
例如,要显示扩展名为 .jpg 的所有文件,请运行以下命令:

要显示文件和目录的 UID 和 GID,请使用 -n 选项。
ls -n
如果你有点好奇,想检查 ls 命令的版本,可以按以下方法进行:
ls --version
ls 程序提供了丰富的命令行选项。我们介绍的只是一些常用选项。要获取所有命令选项的完整列表,请运行以下命令:
ls --help
还可以选择运行man ls

为 ls 命令做了一个别名,当我们执行 ls 命令时,它默认使用 -l 选项,并显示前面提到的长列表。
alias ls="ls -la"
要查看系统中可用的别名数量,请使用下面的别名命令,也可以如下例所示取消别名。
alias
要删除先前定义的别名,只需使用 unalias 命令即可。
unalias ls
组合选项能极大提升效率:
- `ls -larth`:按时间反向排序 + 人类可读大小 + 显示隐藏文件
- `ls -lSrh`:按大小反向排序 + 人类可读(最小文件在前)
- `ls -Fla`:显示隐藏文件 + 类型标识 + 长格式
ls 命令的威力远不止于简单列表。通过组合选项(如 ls -larth),你能快速定位最新修改的大文件;利用通配符技巧(ls *.sh),可精准管理特定类型文件。记住:
🔹 组合即效率:-h(可读大小)+ -t(时间排序)+ -r(反向)解决 90% 的检索需求 🔹 安全第一:生产环境慎用永久别名,推荐 \ls 调用原生命令 🔹 探索无止境:ls --ignore=*.log(排除日志文件)等进阶用法待你发掘
终端挑战:尝试 ls -l $(find . -type f -mtime -1) 列出 24 小时内修改的文件。掌握这些技巧,你将成为真正的文件管理大师!