在写博客的时候经常会需要展示项目的目录结构,我电脑是windows的,tree命令不是很好使。能用Node就用Node! 所以就找了几个跨平台的。分别是tree-cli和tree-node-cli,这两个是一个作者。其中tree-node-cli是比较适合Linux用户的,大小写区分,而且还有API,但是目前不能直接生成文件。除了这种类型的,还有生成md的、能生成网页的等等,大家自己搜搜就好了。
安装tree-node-cli
npm install -g tree-node-cli
使用
执行如下命令即可在终端中生成,复制保存下来即可。
treee -L 3 -I "node_modules|.idea|objects|.git" -a --dirs-first
结果:
├── .electron-vue
│ ├── build.js
│ ├── dev-client.js
│ ├── dev-runner.js
│ ├── webpack.main.config.js
│ ├── webpack.renderer.config.js
│ └── webpack.web.config.js
├── assets
│ ├── commitMessageStandard.md
│ ├── home.jpg
│ ├── tree.txt
│ └── treeNodeCli.md
├── build
│ └── icons
│ ├── 256x256.png
│ ├── icon.icns
│ └── icon.ico
├── dist
│ ├── electron
│ │ └── main.js
│ └── web
├── src
│ ├── main
│ │ ├── index.dev.js
│ │ └── index.js
│ ├── renderer
│ │ ├── assets
│ │ ├── components
│ │ ├── router
│ │ ├── store
│ │ ├── views
│ │ ├── App.vue
│ │ └── main.js
│ └── index.ejs
├── static
├── .babelrc
├── .travis.yml
├── appveyor.yml
├── package-lock.json
├── package.json
└── README.md
解释
-
windows用户需要用treee代替tree,避免和系统的tree命令冲突。
treee
-
指定路径的级别为3级。
-L 3
-
忽略文件夹(正则表达式匹配的,.git会匹配到.gitignore,所以.gitignore文件没有显示出来)。
-I "node_modules|.idea|objects|.git"
-
显示所有文件(默认前缀有"."的不会显示,例如".electron-vue")。
-a
-
目录在前,文件在后(默认是字母排序,和idea显示的顺序不一致)。
--dirs-first
完整选项
-V, --version 输出版本号
-a, --all-files 打印所有文件,包括隐藏文件
--dirs-first 目录在前,文件在后
-d, --dirs-only 仅列出目录
-I, --exclude [patterns] 排除与模式匹配的文件。用 | 隔开,用双引号包裹。 例如 “node_modules|.git”
-L, --max-depth <n> 目录树的最大显示深度
-r, --reverse 按反向字母顺序对输出进行排序
-F, --trailing-slash 为目录添加'/'
-h, --help 输出用法信息
卸载
npm uninstall -g tree-node-cli