dir是linux系统中用于列出目录内容的命令行工具,属于GNU coreutils工具集的组成部分,主要作用是展示指定目录下的文件、子目录列表,同时可以附带显示文件的权限、大小、修改时间等属性信息。它的核心功能和ls命令非常接近,但在默认输出行为和参数设置上存在一些细微差异,是linux文件管理中常用的基础命令之一。

dir命令的基本含义
从字面含义来看,dir是directory(目录)的缩写,在linux系统中它被设计为目录列表工具,默认情况下如果不指定目录路径,会列出当前工作目录下的所有可见内容。和ls命令一样,dir命令读取目录的元数据信息,将文件名、文件属性等信息格式化后输出到终端。
dir和ls命令的区别
很多用户会疑惑既然有了ls命令,为什么还要有dir命令,两者的核心差异主要体现在以下几个方面:
- 默认输出格式不同:dir命令默认会以多列形式输出文件名,和ls命令的默认行为类似,但在部分发行版中,dir的默认排序规则和ls可能存在细微差别。
- 默认参数不同:dir命令默认不会启用颜色高亮显示不同类型的文件,而很多linux发行版中ls命令默认配置了别名,会自动用不同颜色区分普通文件、目录、可执行文件等。
- 兼容性设计:dir命令的设计参考了DOS和Windows系统中的dir命令行为,对于从Windows环境迁移到linux的用户来说,使用dir命令的上手成本更低。
dir命令的常用参数
dir命令支持多种参数,用来调整输出内容和格式,以下是几个常用的参数说明:
| 参数 | 作用说明 |
|---|---|
| -a | 显示所有文件,包括以.开头的隐藏文件 |
| -l | 以长格式显示文件信息,包含权限、所有者、大小、修改时间等 |
| -h | 和-l参数配合使用,将文件大小以人类可读的格式显示,比如KB、MB |
| -t | 按照文件的修改时间排序,最新修改的文件排在最前面 |
| -r | 反向排序输出结果 | >
dir命令的使用示例
以下是几个常见的dir命令使用场景示例:
列出当前目录所有内容
直接执行dir命令,会输出当前目录下的可见文件和子目录:
# 列出当前目录内容 dir
列出指定目录的内容
可以在dir命令后跟上目录路径,查看指定目录下的内容:
# 列出/home/user目录下的内容 dir /home/user
以长格式显示所有文件
结合-a和-l参数,可以查看目录下所有文件的详细属性:
# 显示当前目录所有文件的详细信息 dir -al
查看文件大小的可读格式
使用-h参数配合-l参数,让文件大小显示更直观:
# 以可读格式显示文件详细信息 dir -lh
dir命令的输出说明
当使用dir -l参数输出长格式信息时,每一列的含义如下:
- 第一列:文件类型和权限,比如
drwxr-xr-x中第一个字符d代表是目录,后面9位代表所有者、所属组、其他用户的权限。 - 第二列:硬链接数量。
- 第三列:文件所有者的用户名。
- 第四列:文件所属组的组名。
- 第五列:文件大小,默认单位是字节。
- 第六到八列:文件的最后修改时间。
- 第九列:文件名。
需要注意的是,dir命令在linux系统中并不是必须使用的命令,大部分场景下用户更习惯使用ls命令,但了解dir命令的含义和用法,能够帮助用户更全面地掌握linux命令行工具的使用逻辑,在需要兼容不同环境时也能更灵活地选择工具。