linux 以树形结构方式显示文件目录结构
我们有时候要展示文件夹结构,比如一些小 Demo 什么的,展示工程的文件组织方式,使用树形结构是最方便的,那在 linux 下面有没有这样的工具呢?
有的,就是 tree
命令。
安装 tree 命令
使用这个命令需要先安装, Debian 系的安装方式:
apt-get install tree
CentOS 系的安装方式:
yum install tree
使用方式
tree 以树状图显示所有文件
tree -L N 以树状图显示所有文件,子文件夹显示到第 N 层
参数列表
这个命令的参数还是蛮多的,涉及到展示方式、排序等等。这里列出一部分好玩的。
- -a 显示所有文件和目录。
- -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
- -C 在文件和目录清单加上色彩,便于区分各种类型。
- -d 显示目录名称而非内容。
- -D 列出文件或目录的更改时间。
- -f 在每个文件或目录之前,显示完整的相对路径名称。
- -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上”*”,”/”,”=”,”@”,”|”号。
- -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
- -i 不以阶梯状列出文件或目录名称。
- -I <范本样式> 不显示符合范本样式的文件或目录名称。
- -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
- -n 不在文件和目录清单加上色彩。
- -N 直接列出文件和目录名称,包括控制字符。
- -p 列出权限标示。
- -P <范本样式> 只显示符合范本样式的文件或目录名称。
- -q 用”?”号取代控制字符,列出文件和目录名称。
- -s 列出文件或目录大小。
- -t 用文件和目录的更改时间排序。
- -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
- -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上
大家可以尝试使用参数看看效果有什么不一样的。
不得不说,这个工具还是蛮强大的,边边角角的小细节都考虑到了,你想要的,它都实现了。