在一个项目的 README 中,我们往往会想把项目的目录结构进行一下介绍或者注释,这样方便其他人接手项目时快速熟悉,同时也方便自己回忆起项目结构。那么效果比较好的呈现方式自然就是目录树,如何快速生成项目的目录树呢?(此篇仅针对 MacOS)
tree 命令
MacOS 并不自带 tree
命令,因此我们需要手动安装一下。
安装
$ brew install tree
复制代码
使用
$ tree
复制代码
灵活用法
仅仅是上面这样使用可能没法满足一些情况下的需求。
-
如何输出指定层级的目录树?
直接使用
tree
命令,它会把所有层级都输出,但如果我们只要输出 2 个层级就可以了,那么可以这样使用:// -L level 表示只会遍历到指定层级 $ tree -L 2 复制代码
-
如何忽略某些文件夹输出目录树?
前端项目基本都会有这个问题,就是会把
node_modules
也输出成目录树,一下子目录树会无比巨大,而且一般我们也并不需要输出这个文件夹下的内容,那么可以这样使用:// -I pattern 表示不会将匹配到的文件/文件夹输出,即类似 ignore 的功能 $ tree -I node_modules 复制代码
当然可能还有其他场景,这时候你可以查看这个命令的说明:
tree --help
来看看还有什么参数是可以满足需求的,可用的参数还是非常多的。