前言

我们经常在写博客或者项目设计文档时需要列出项目的结构树。我们下可以使用 tree 列出项目结构,如下面这种:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ tree -L 2 -I "node_modules"
tree-node-cli
├── LICENSE
├── README.md
├── __tests__
│ ├── __fixtures__
│ ├── __snapshots__
│ ├── fixtures
│ └── tree.test.js
├── bin
│ └── tree
├── jest.config.js
├── package.json
├── tree.js
└── yarn.lock

使用 windows 自带的 tree 命令

windows 提供了一个 tree 命令可供我们使用,但是不太好用。

1
2
3
4
TREE [drive:][path] [/F] [/A]

/F 显示每个文件夹中文件的名称。
/A 使用 ASCII 字符,而不使用扩展字符。

当然你也可以使用ls命令,但是不太好看。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
PS D:\Data\00Code\Git\GitHub\Myblog\blog\source\_posts> ls

Directory: D:\Data\00Code\Git\GitHub\Myblog\blog\source\_posts

Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2023/2/7 14:44 1265 [转]看板娘.md
-a--- 2023/2/5 18:04 19700 [转]Markdown语法.md
-a--- 2023/2/7 17:40 896 编辑器插件推荐.md
-a--- 2023/2/7 14:44 932 测试页.md
-a--- 2023/2/7 14:44 6782 配置github图床+picgo-core上传+jsd
elivr.md
-a--- 2023/2/7 14:44 44983 十分钟搭建一个私人的loveit风格博
客.md
-a--- 2023/2/8 18:59 2469 新文章通知.md
-a--- 2023/2/7 14:44 123069 butterfly语法.md

使用基于node的tree-node-cli

官方文档[1] [yangshun/tree-node-cli]参考资料

  1. 安装tree-node-cli
1
npm install -g tree-node-cli
  1. 命令

在 Windows 和 Linux 上使用命令 treee 以避免与内置的 tree 命令冲突。

1
treee --help 
  • 帮助 treee -h
  • 忽略目录或文件 # 忽略多个,使用 | 分割tree -I "node_modules|public|vite.config.ts"
  • 指定目录层级 tree -L 2 -I "node_modules"
  • 显示.xxx文件 tree -I "node_modules" -a # tree-node-cli 默认忽略了 .xxx 类文件

参考资料