tree 命令

tree命令用于以树状图列出目录的内容。它会列出指定目录下的所有文件,包括子目录里的文件。

语法

tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录...]

选项

  • -a 显示所有文件和目录。
  • -A 使用 ASNI 绘图字符显示树状图而非以 ASCII 字符组合。
  • -C 在文件和目录清单加上色彩,便于区分各种类型。
  • -d 显示目录名称而非内容。
  • -D 列出文件或目录的更改时间。
  • -f 在每个文件或目录之前,显示完整的相对路径名称。
  • -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
  • -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
  • -i 不以阶梯状列出文件或目录名称。
  • -L level 限制目录显示层级。
  • -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
  • -n 不在文件和目录清单加上色彩。
  • -N 直接列出文件和目录名称,包括控制字符。
  • -p 列出权限标示。
  • -P<范本样式> 只显示符合范本样式的文件或目录名称。
  • -q 用"?"号取代控制字符,列出文件和目录名称。
  • -s 列出文件或目录大小。
  • -t 用文件和目录的更改时间排序。
  • -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
  • -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。

实例

以树状图列出当前目录结构。可直接使用如下命令:

tree

该命令有如下输出结果:

# tree                   #以树状图列出当前目录结构
.
├── arthas-boot.jar
├── back
├── bin
│   └── update_rubygems
├── nginx-1.23.0.tar.gz
├── shell
│   └── clear_tmp.sh
├── soft
│   ├── redis-3.0.7.tar.gz
│   └── redis-3.2.1.gem
├── work
│   └── Tomcat
│       └── localhost
│           ├── business
│           ├── cishb-manager
│           ├── cishop-manager
│           ├── manager
│           ├── merchant
│           ├── ROOT
│           └── zhcis-manager
└── zookeeper