文章最后更新时间:2024年05月16日
Mrakdown文档中不能直接插入一个文件夹中的目录树,需要借助tree命令来实现;
步骤
Window平台下tree 命令使用
WIndow 平台要想打印目录树,可以用cmd工具或者power shell 的tree命令实现
tree 命令格式和参数:
TREE [drive:][path] [/F] [/A]
/F 显示每个文件夹中文件的名称。(带扩展名) /A 使用 ASCII 字符,而不使用扩展字符。(如果要显示中文,例如 tree /f /A >tree.txt) 比如,在power sheel中输入:(或者右键点击文件夹,选择在终端中打开)
d:\music\tree /f >tree.txt
导出d盘music目录的文件夹/文件的目录树到tree.txt文件中。
├─自制DJ碟│ Track01.mp3│ ├─车载CD《华语老歌成名曲》精选特辑CD1│ tree.txt│ 群星 - 01.恋曲1990.wav│ 群星 - 02.朋友别哭.wav│ 群星 - 03.别怕我伤心.wav│ 群星 - 04.约在某一天.wav│ 群星 - 05.伤痕.wav│ 群星 - 06.大海.wav│ 群星 - 07.为爱犯了罪.wav│ 群星 - 08.大约在冬季.wav│ 群星 - 09.一千个伤心的理由.wav│ 群星 - 10.别问我是谁.wav│ 群星 - 11.原来你什么都不想要.wav│ 群星 - 12.舍不得把爱眼睛睁开.wav│ 群星 - 13.爱我的人和我爱的人.wav│ 群星 - 14.爱情的故事.wav│ 群星 - 15.让我一次爱个够.wav│ 群星 - 16.爱上一个不回家的人.wav│ ├─车载CD《华语老歌成名曲》精选特辑CD2│ 群星 - 01.爱你十分泪七分.wav│ 群星 - 02.只要你过得比我好.wav│ 群星 - 03.我的未来不是梦.wav│ 群星 - 04.浪人情歌.wav│ 群星 - 05.太傻.wav│ 群星 - 06.把悲伤留给自己.wav│ 群星 - 07.像我这样重感情的人.wav│ 群星 - 08.出界.wav│ 群星 - 09.牵手.wav│ 群星 - 10.棋子.wav│ 群星 - 11.女人花.wav│ 群星 - 12.伤心雨.wav│ 群星 - 13.他不爱我.wav│ 群星 - 14.让我欢喜让我忧.wav│ 群星 - 15.一场游戏一场梦.wav│ 群星 - 16.为什么你背着我爱别人.wav│ ├─车载CD《华语老歌成名曲》精选特辑CD3│ 群星 - 01.比我幸福.wav│ 群星 - 02.心如刀割.wav│ 群星 - 03.被动.wav│ 群星 - 04.缠绵.wav│ 群星 - 05.上海滩.wav│ 群星 - 06.风雨无阻.wav│ 群星 - 07.星星点灯.wav│ 群星 - 08.爱拼才会赢.wav│ 群星 - 09.酒干倘卖无.wav│ 群星 - 10.千千厥歌.wav│ 群星 - 11.梅花三弄.wav│ 群星 - 12.我只在乎你.wav│ 群星 - 13.风中有朵雨做的云.wav│ 群星 - 14.男人不该让女人流泪.wav│ 群星 - 15.其实你不懂我的心.wav│ 群星 - 16.不让我的眼泪陪我过夜.wav│ 群星 - 17.把根留住.wav│ ├─车载CD《华语老歌成名曲》精选特辑CD4│ CDImage.ape│ CDImage.cue│ ├─车载CD《华语老歌成名曲》精选特辑CD5│ CDImage.ape│ CDImage.cue│ ├─车载CD《华语老歌成名曲》精选特辑CD6│ CDImage.ape│ CDImage.cue│ ├─车载CD《华语老歌成名曲》精选特辑CD7│ CDImage.ape│ CDImage.cue│ └─车载CD《华语老歌成名曲》精选特辑CD8 CDImage.ape CDImage.cue
小提示:如果文件夹内子文件夹和文件数比较多,生成的tree.txt文件会比较大,打开比较慢;
git bash 工具的使用
第二种方法是使用git bash 工具 使用tree
命令;
git bash 工具使用前需要安装Tree for Windows工具,否则会报错,下面是Tree for Windows的安装方法:
打开进入 Tree for Windows 页面,选择下载 Binaries zip 文件;
解压压缩包,找到压缩包内的 bin 目录,将 bin 目录下的 tree.exe 复制;
找到
C:\\Program Files\Git\usr\bin
目录,将 tree.exe 粘贴到该目录下,安装即完成。
使用举例:
在需要生成目录树的文件夹点击右键,选择:Get bash here,在打开的窗口中输入:
$ tree -f >tree.txt
即可打印出当前文件夹下的目录树:
.|-- ./music01| |-- ./music01/\270\350\307\3721.MP3| |-- ./music01/\270\350\307\3722.MP3| |-- ./music01/\270\350\307\3723.MP3| |-- ./music01/\270\350\307\3724.MP3| |-- ./music01/\270\350\307\3725.MP3| `-- ./music01/\270\350\307\3726.MP3`-- ./music02 |-- ./music02/\270\350\307\3721.MP3 |-- ./music02/\270\350\307\3722.MP3 |-- ./music02/\270\350\307\3723.MP3 |-- ./music02/\270\350\307\3724.MP3 |-- ./music02/\270\350\307\3725.MP3 `-- ./music02/\270\350\307\3726.MP3
目前貌似不支持中文......
tree命令行参数:
-a 显示所有文件和目录。
-A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
-C 在文件和目录清单加上色彩,便于区分各种类型。
-d 显示目录名称而非内容。
-D 列出文件或目录的更改时间。
-f 在每个文件或目录之前,显示完整的相对路径名称。
-F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|“号。
-g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
-i 不以阶梯状列出文件或目录名称。
-I 不显示符合范本样式的文件或目录名称。
-l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
-n 不在文件和目录清单加上色彩。
-N 直接列出文件和目录名称,包括控制字符。
-p 列出权限标示。
-P 只显示符合范本样式的文件或目录名称。
-q 用”?"号取代控制字符,列出文件和目录名称。
-s 列出文件或目录大小。
-t 用文件和目录的更改时间排序。
-u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
-x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。