命令简介
tree命令的中文意思为“树”,功能是以树形结构列出指定目录下的所有内容,包括所有文件、子目录及子目录里的目录和文件。
命令格式
tree [option] [directory]
tree [选项] [目录]
说明:
1)注意tree命令以及后面的选项和目录,每个元素之间都至少要有一个空格
2)tree命令后若不接选项和目录就会默认显示当前所在路径目录的目录结构
tree命令的参数选项及说明,图片来源于 【跟老男孩学Linux运维:核心系统命令】
-I
:命令允许你使用正则匹配来排除掉你不想看到的文件夹
举例
在举例前,我们是不是应该安装好tree命令呢?(如果你也采用最小化安装Linux系统的方式,那么tree命令可能没有安装,此时我们应该用yum命令来安装tree命令)
1 2 3 |
|
临时解决树结构乱码的方法
[root@king ~]# LANG=en_US.UTF-8
例子一:不带任何参数执行tree命令
[root@king etc]# cd ~
[root@king ~]# tree #<==显示当前目录的结构。
. #<==“.”以当前目录为起点。
├── anaconda-ks.cfg
├── install.log
└── install.log.syslog
0 directories, 3 files
例子二:以树形结构显示目录下的所有内容(-a的功能)
1 2 3 4 5 6 7 8 9 |
|
例子三:只列出根目录下第一层目录的结构(-L功能)
1 2 3 4 5 6 7 8 9 10 11 |
|
例子四:只显示所有的目录(但不显示文件)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
例子五:用tree命令来区分目录和文件的方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
说明:$在Linux正则表达式中标识以什么什么结尾,^表示以什么什么开头,^$表示空行,此处只做简要说明
例子六:忽略某个文件夹的内容
-I
命令允许你使用正则匹配来排除掉你不想看到的文件夹,例如:
tree -I "node_modules"
也可以使用
|
同时排除掉多个文件夹:
tree -I "node_modules|cache|test_*"
最后一个使用到正则匹配,这样以
test_
开头的文件夹都不会被显示出来。