..
tree命令的使用
介绍
tree(树),其作用如其寓意:就是打印出目标目录下的文件树。
用例
# 1. 切记要加 -L (递归层级)参数,否则无限递归下去可能会爆了输出。这里限制
# 递归层数为2,打印出 /etc 目录下的文件树。
$ tree -L 2 /etc
/etc
├── afpovertcp.cfg
├── aliases -> postfix/aliases
├── aliases.db
├── apache2
│ ├── extra
......省略
│ ├── httpd_webdavsharing_proxy.conf.inactive
│ ├── httpd_webdavsharing_template.conf
│ └── wfs.plist
├── xtab
├── zprofile
├── zshrc
└── zshrc_Apple_Terminal
35 directories, 167 files
# 2. 使用 -d 参数,只列出文件夹
$ tree -L 2 -d /etc # 可简写为:tree -dL 2 /etc。L必须放在最后一个,道理跟 tar -zxvf 是一样的。
/etc
├── apache2
│ ├── extra
│ ├── original
...省略
├── sudoers.d
├── uucp
└── wfs
35 directories
# 3. 配合 -P 参数可以列出符合通配符匹配到的文件;而 -I 参数刚好与之相反。
# 这起到的作用有点类似于文件搜索 find 命令的范畴了。这个使用得很少,不是很好用。
#
# 我们来看看 /etc 目录下,有多少 *.conf 文件。 --prune 会剪除没有 *.conf 文
# 件的目录
$ tree /etc -P '*.conf' --prune
/etc
├── apache2
│ ├── extra
│ │ ├── httpd-autoindex.conf
│ │ ├── httpd-dav.conf
...省略
├── syslog.conf
└── wfs
├── httpd_webdavsharing.conf
└── httpd_webdavsharing_template.conf
15 directories, 58 files
扩展
tree 命令感觉更多的时候是在写教程的时候,展示项目目录结构用的。用来做文件搜索还是不如 find 等命令好用。