使用tree生成目录树结构

本文介绍了如何使用DOS中的tree命令、基于node的treer、tree-node-cli和tree-cli来生成和展示项目目录结构。针对DOS和git Bash的不同环境,提供了相应解决方案,包括过滤特定文件、保存输出到文件以及在Markdown中展示目录结构。文章还提到了各工具的特点和限制,并总结了在不同场景下的适用方法。
摘要由CSDN通过智能技术生成

虽互不曾谋面,但希望能和你成为笔尖下的朋友

以读书,技术,生活为主,偶尔撒点鸡汤

不作,不敷衍,意在真诚吐露,用心分享

点击左上方,可关注本刊

文 | 随笔川迹

文末付有视频,土豪请随意了

如需高清视频,后台可回复【tree视频下载】

前言

有时候,当你完成一个项目后,想要展示这个项目的目录结构(如下图所示),对该项目进行文档描述性说明,用于解释其项目中各个目录以及文件代表的含义,这样便于自己和后来的同学理解

在实际开发中,对于接收毫无文档说明的project,是非常痛苦的,一份好的readme文档也是非常重要的,那怎么办?逐行手写?当然不是,接下来,一步一步带你见证奇迹

使用DOS中的tree命令

人用迭代,神用递归,其实说的是自己调用自己,而这个tree命令就是用递归写的

tree是DOS的一个命令

功能:以图形的方式现实应用程序或者路径的目录结构

对于tree命令在windows坏境下的使用的,执行 help命令,然后 tree /?,其他windows的dos命令也是如此

官方解释:Tree是一个递归目录列表程序,它生成一个深度缩进的文件列表。给出目录参数时,树会列出给定目录中找到的所有文件和/或目录

缺陷:在windows DOS终端下,tree对应的参数功能有限,无法过滤特定的文件,而且在git bash终端下此命令却无法使用,如果要使用,特用特定的方法,后文中提供了具体的解决方法 tree命令使用:

1.  D:\公开课\2019\react\myfirstreactapp>tree /?2.  以图形显示驱动器或路径的文件夹结构。4.  TREE [drive:][path] [/F] [/A]6.  /F 显示每个文件夹中文件的名称。7.  /A 使用 ASCII 字符,而不使用扩展字符(会把当前目录下的结构给展出来)。8.  TREE [drive:][path] [/F] [/A]

当你在当前目录下使用 tree /F或者 tree /a 这两个命令时,你会发现,它会把所有文件目录结构都给你打印出来 使用 tree /f,如下所示:

│ │ README.md│ ││ ├─regexpu-core│ │ │ LICENSE-MIT.txt│ │ │ package.json│ │ │ README.md│ │ │ rewrite-pattern.js│ │ ││ │ └─data│ │ character-class-escape-sets.js│ │ iu-mappings.js│ ││ ├─regjsgen│ │ LICENSE│ │ package.json│ │ README.md│ │ regjsgen.js│ ││ ├─regjsparser│ │ │ CHANGELOG│ │ │ LICENSE.BSD│ │ │ package.json│ │ │ parser.js│ │ │ README.md│ │ ││ │ ├─bin│ │ │ parser│ │ ││ │ └─node_modules│ │ ├─.bin│ │ │ jsesc│ │ │ jsesc.cmd│ │ ││ │ └─jsesc│ │ │ jsesc.js│ │ │ LICENSE-MIT.txt│ │ │ package.json│ │ │ README.md│ │ ││ │ ├─bin│ │ │ jsesc│ │ ││ │ └─man│ │ jsesc.1│ │

使用 tree /a,如下所示

D:\公开课\2019\react\myfirstreactapp>tree /A卷 Data 的文件夹 PATH 列表卷序列号为 5A50-E210D:.+---node_modules| +---.bin| +---@babel| | +---code-frame| | | \---lib| | +---core| | | +---lib| | | | +---config| | | | | +---files| | | | | +---helpers| | | | | \---validation| | | | +---tools| | | | \---transformation| | | | +---file| | | | \---util| | | \---node_modules| | | +---.bin| | | \---semver| | | \---bin

如果你此时想要把目录结构保存到一个文件里,可以用如下方式:

tree /f > 指定输出的文件(一般为txt格式或者readme文档)

tree /f > 指定输出的文件(一般为txt格式或者readme文档)

tree /f > list.txt

当然你也可以在窗口里,手动复制结果,然后,新建一个文件,把输出的结果粘贴进去,也不是不可以,但是你要知道,程序员哥哥是很懒的,个人强烈推荐使用命令行方式去自动化操作

注意tree命令是Windows下的一个命令,在linux下或者git命令行工具里,却无法使用,不支持tree,然而如果想要支持怎么办?

下载tree,Binaries版本(http://gnuwin32.sourceforge.net/packages/tree.htm)如下图所示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值