tree:目录树生成工具
这里以vue-element-admin官方文档的目录结构为例,下图就是该项目的目录树
Mac安装tree之前需要安装homebrow
Homebrew是一款Mac OS平台下的软件包管理工具
Homebrew —— OS X 不可或缺的套件管理器
官方提供的安装方式,但是需要挂梯子
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
可以直接在终端中运行其他大佬托管到gitee的安装脚本:
/usr/bin/ruby -e "$(curl -fsSL https://gitee.com/xueweihan/codes/vfrgh7z8qcjlx1ubwt6nk71/raw\?blob_name\=brew_install.sh)"
安装tree
brew install tree
使用tree
tree命令行参数:
-a 显示所有文件和目录。
-A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
-C 在文件和目录清单加上色彩,便于区分各种类型。
-d 显示目录名称而非内容。
-D 列出文件或目录的更改时间。
-f 在每个文件或目录之前,显示完整的相对路径名称。
-F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
-g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
-i 不以阶梯状列出文件或目录名称。
-I 不显示符合范本样式的文件或目录名称。
-l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
-n 不在文件和目录清单加上色彩。
-N 直接列出文件和目录名称,包括控制字符。
-p 列出权限标示。
-P 只显示符合范本样式的文件或目录名称。
-q 用"?"号取代控制字符,列出文件和目录名称。
-s 列出文件或目录大小。
-t 用文件和目录的更改时间排序。
-u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
-x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。
tree使用效果图 ant-desgin开发的项目
├── about.png
├── banner.png
├── layouts
│ └── index.jsx
├── logo.png
├── map.gif
├── mapplus.png
└── pages
├── about
│ ├── Content11.jsx
│ ├── Feature4.jsx
│ ├── Pricing0.jsx
│ ├── data.source.js
│ ├── documentation.md
│ ├── index.jsx
│ ├── less
│ │ ├── antMotionStyle.less
│ │ ├── common.less
│ │ ├── content.less
│ │ ├── content11.less
│ │ ├── custom.less
│ │ ├── edit.less
│ │ ├── feature4.less
│ │ └── pricing0.less
│ ├── team
│ │ ├── Teams2.jsx
│ │ ├── data.source.js
│ │ ├── index.jsx
│ │ ├── less
│ │ │ ├── antMotionStyle.less
│ │ │ ├── common.less
│ │ │ ├── content.less
│ │ │ ├── custom.less
│ │ │ ├── edit.less
│ │ │ └── teams2.less
│ │ └── utils.js
│ └── utils.js
├── big
│ ├── Content9.jsx
│ ├── data.source.js
│ ├── index.jsx
│ ├── less
│ │ ├── antMotionStyle.less
│ │ ├── common.less
│ │ ├── content.less
│ │ ├── content9.less
│ │ ├── custom.less
│ │ └── edit.less
│ └── utils.js
├── index.css
├── index.js
├── last
│ ├── Banner1.jsx
│ ├── Contact0.jsx
│ ├── Content5.jsx
│ ├── Feature0.jsx
│ ├── Feature8.jsx
│ ├── Footer0.jsx
│ ├── Nav3.jsx
│ ├── index.jsx
│ ├── less
│ │ ├── antMotionStyle.less
│ │ ├── banner1.less
│ │ ├── common.less
│ │ ├── contact0.less
│ │ ├── content.less
│ │ ├── content5.less
│ │ ├── custom.less
│ │ ├── edit.less
│ │ ├── feature0.less
│ │ ├── feature8.less
│ │ ├── footer0.less
│ │ └── nav3.less
│ ├── utils.js
│ └── data.source.js
└── news
├── Feature5.jsx
├── documentation.md
├── index.jsx
├── less
│ ├── antMotionStyle.less
│ ├── common.less
│ ├── content.less
│ ├── custom.less
│ ├── edit.less
│ └── feature5.less
├── utils.js
└── data.source.js