tree 命令详解
更新时间:2026-08-28。本文是「一个命令一个文档」系列,属于文件与目录命令族(见文件与目录命令族)。接手陌生项目时,十秒看清全貌就靠它。
tree 把目录层级画成一棵树,一眼看清谁在上谁在下、有哪些子目录。比 ls -R 的输出直观太多。
一、基本用法
bash
tree # 当前目录整棵树
tree /path/to/proj # 指定目录
tree -L 2 # 只展 2 层
tree -d # 只看目录,不列文件
-L(level)限制深度,避免一棵树几千行。-d(directory)只看目录骨架,快速掌握项目分层。tree不是所有系统默认装(最小化镜像常缺),没有就用find . -type d | sed近似替代。
二、过滤与信息
bash
tree -I 'node_modules|*.git' # 排除指定目录/模式
tree -h # 显示每个文件大小
tree -P '*.md' # 只显示匹配模式的文件
tree -o out.txt # 输出到文件
-I(ignore)排查/展示时剔除噪音目录(如node_modules、.git)。-P(pattern)只列关心的文件类型,比如只看项目里所有.md文档结构。-h顺带显示大小。
三、实战:快速熟悉项目
bash
tree -L 2 -d -I 'node_modules|.git' ~/project接手新仓库时这条命令能十秒画出模块分层,比肉眼翻 ls 高效。配合
-I排除依赖目录,聚焦业务代码。
相关命令
一句话总结
tree = 目录结构树状图:-L 2 限两层、-d 只看目录骨架、-I 排除噪音(如 node_modules)、-P 只显某类文件、-h 带大小;接手陌生项目用 tree -L 2 -d -I 'node_modules|.git' 十秒看清分层。注意最小化镜像常未预装。