Linux杂谈: 树形显示多级目录--tree
最近写博客的时候偶尔会需要将文件目录结构直观地列出来,例如python的包结构。
于是在网上搜了搜,发现了一个Linux下还不错的工具--tree
tree 可以很直观地显示多级目录结构。
1. 安装方法
Ubuntu上直接
sudo apt install tree
2. 几个比较常规的用法:
1. 显示目录结构
[root@ Test]# tree
.
└── Level-
├── L1-File-.txt
├── L1-File-.txt
├── Level--
│ ├── L21-File-.txt
│ ├── Level--
│ │ └── L31-File-.txt
│ ├── Level--
│ │ └── L32-File-.txt
│ └── Level--
│ └── L33-File-.txt
├── Level--
│ └── L22-File-.txt
└── Level-- directories, files
2. 包含隐藏文件
[root@ Test]# tree -a
.
└── Level-
├── L1-File-.txt
├── L1-File-.txt
├── .L1-hide.dat
├── Level--
│ ├── L21-File-.txt
│ ├── .L2-hide.dat
│ ├── Level--
│ │ └── L31-File-.txt
│ ├── Level--
│ │ └── L32-File-.txt
│ └── Level--
│ └── L33-File-.txt
├── Level--
│ └── L22-File-.txt
└── Level-- directories, files
3. 控制深度(假设为3)
[root@ Test]# tree -L
.
└── Level-
├── L1-File-.txt
├── L1-File-.txt
├── Level--
│ ├── L21-File-.txt
│ ├── Level--
│ ├── Level--
│ └── Level--
├── Level--
│ └── L22-File-.txt
└── Level-- directories, files
4. 只显示目录
[root@ Test]# tree -d
.
└── Level-
├── Level--
│ ├── Level--
│ ├── Level--
│ └── Level--
├── Level--
└── Level-- directories
5. 对需要显示的文件进行过滤
# 只显示包含 "L2"字符串的文件,并将过滤后的空目录也同时过滤掉
[root@ Test]# tree -P '*L2*' --prune
.
└── Level-
├── Level--
│ └── L21-File-.txt
└── Level--
└── L22-File-.txt directories, files # 只显示不包含 "L2"字符串的文件,并将过滤后的空目录也同时过滤掉
[root@ Test]#
[root@ Test]# tree -I '*L2*' --prune
.
└── Level-
├── L1-File-.txt
├── L1-File-.txt
└── Level--
├── Level--
│ └── L31-File-.txt
├── Level--
│ └── L32-File-.txt
└── Level--
└── L33-File-.txt directories, files
3. 更多的选项
| 选项 | 说明 |
| -a | 显示所有文件,包含隐藏文件。 |
| -d | 只显示目录。 |
| -l | 跟踪符号链接,如果链接的是一个目录,则当成目录处理。 |
| -f | 显示完整路径。 |
| -x | 只显示本文件系统。 |
| -L level | 控制显示的目录深度。 |
| -R | 在下级目录中,再次执行 tree 命令并且加上 '-o 00Tree.html'选项,配合-L,-H使用。 |
| -P pattern | 只显示匹配了 pattern 的文件(不是目录),支持简单的正则表达式。 |
| -I pattern | 与-P相反,只显示没有匹配 pattern的文件。 |
| --ignore-case | 当使用了-P或-I选项时,忽略大小写。 |
| --matchdirs | 当使用了-P选项时,文件名包含完整路径。 |
| --prune | 不显示空目录,如果经过-P或-I后没有目录下没有需要显示的,也当作空目录。 |
| --noreport | 不显示最后的统计信息。 |
| --charset charset | 指定字符集。 |
| --filelimit # | 过滤掉文件个数超过 # 的目录。 |
| --timefmt fmt | 按照指定的格式打印文件的修改时间。 |
| -o filename | 将结果输出到文件。 |
| -q | 用问号代替不可打印的字符。 |
| -N | 用八进制代替不可打印的字符。 |
| -Q | 用引号将文件名括起来。 |
| -p | 显示文件的类型和权限。 |
| -u | 显示文件所属的用户名或者UID。 |
| -g | 显示文件所属的组或者GID。 |
| -s | 显示文件的大小,单位:字节。 |
| -h | 显示文件的大小,使用更人性化的显示。 |
| --si | 显示文件的大小,类似 -h 但是使用国际公制单位(1k=1000)。 |
| --du | 对于目录,显示其下所有文件的累计大小。 |
| -D | 显示文件的最后修改时间。 |
| -F | 类似 ls -F,对不同的文件类型,在末尾加上不同的字符。 |
| --inodes | 显示文件的索引节点。 |
| --device | 显示文件所属的设备号。 |
| -v | 显示的文件列表按照version排序。 |
| -t | 显示的文件列表按照最后修改时间排序。 |
| -c | 显示的文件列表按照最后的状态改变时间排序。 |
| -U | 不进行排序处理。 |
| -r | 反向输出列表。 |
| --dirsfirst | 优先显示目录(同一级别 ) |
| --sort[=name] | 指定排序方式,name(default), ctime, mtime, size, version. |
| -i | 输出中不要进行缩进。 |
| -A | 使用ASCII的横线字符表示缩进。 |
| -S | 使用CP437的横线字符表示缩进。 |
| -n | 关闭颜色显示。 |
| -C | 打开颜色显示。 |
| -X | 使能XML格式输出。 |
| -J | 使能JSON格式输出。 |
| -H baseHREF | 使能HTML格式输出,并包含基本http链接地址。 |
| -T title | 在HTML格式输出中,设置标题和H1标签头 |
| --nolinks | 在HTML格式输出中,不输出超链接。 |
Linux杂谈: 树形显示多级目录--tree的更多相关文章
- [转帖]Linux杂谈: 树形显示多级目录--tree
Linux杂谈: 树形显示多级目录--tree https://www.cnblogs.com/tp1226/p/8456539.html tree -L 最近写博客的时候偶尔会需要将文件目录结构直观 ...
- Linux 基础命令及基本目录
Linux 基础命令及基本目录 一.网卡 1.网卡配置文件路径 /etc/sysconfig/network-scripts/ifcfg-eth0 配置文件: TYPE=Ethernet # 以太 ...
- Linux之文档与目录结构
Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到某一个目录下,用户通过操作目录来 ...
- Linux之文档与目录结构 目录的相关操作 Linux的文件系统
Linux之文档与目录结构 Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到 ...
- Linux常用命令详解-目录文件操作命令
来源:https://www.linuxidc.com/Linux/2018-04/151801.htm 现实中,服务器(包含Linux,Unix,Windows Server)一般都摆放在机房里,因 ...
- Linux之文档与目录结构 (/ 用法, 相对路径,绝对路径)
Linux之文档与目录结构 Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到 ...
- 【转】第六章、Linux 的文件权限与目录配置
原文网址:http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission.php 最近更新日期:2009/08/18 Linux最优秀的地方之一, ...
- 第六章、Linux 的文件权限与目录配置
第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...
- Linux 指令篇:磁盘管理--tree
Linux 指令篇:磁盘管理--tree 功能说明:以树状图列出目录的内容. 语 法:tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式&g ...
随机推荐
- Android TextView,EditText要求固定行数自动调整TextSize
最近项目有个需求要求文本最多显示3行,继续输入则字体变小,删除已经输入的文字,那么字体变大,不管变大变小都不能超过3行.网上怎么找也找不到相关的解决方案,自己动手,丰衣足食了! 说一下算法思路,后面给 ...
- 【37.07%】【UESTC 360】Another LCIS
Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Status F ...
- Bootstrap手机网站开发案例
Bootstrap手机网站开发案例 一.总结 一句话总结:Bootstrap手机网站开发注意事项(3点):a.引入viewpoint声明,b.通过屏幕宽动态控制元素显隐 c.图片添加自适应 1.Boo ...
- ets学习
http://diaocow.iteye.com/blog/1768647 http://www.cnblogs.com/me-sa/archive/2011/08/11/erlang0007.htm ...
- 【u203】文件夹计数
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 可以用路径来描述文件夹,路径为一个包含若干部分的字符串,之间用'/'分隔.每部分均为一个文件夹的名称, ...
- 【BZOJ 1011】[HNOI2008]遥远的行星
[题目链接]:http://www.lydsy.com/JudgeOnline/problem.php?id=1011 [题意] [题解] 这里的答案误差不超过5%是突破点; 如果是直接暴力写; 复杂 ...
- Tomcat下ajax请求路径总结
ajax的url有两种,一种是绝对路径,另一种是相对路径. 一.绝对路径:包括协议名称.主机地址.端口.web项目名称等的完整请求路径. 例如: $.ajax({ url:"ht ...
- 【a703】求逆序对
Time Limit: 10 second Memory Limit: 2 MB 问题描述 给定一个序列a1,a2...an.如果存在i小于j 并且ai大于aj,那么我们称之为逆序对,求给定序列中逆序 ...
- tombstone问题分析
tombstone文件包含了发生问题的进程ID信息 I/DEBUG ( 241): pid: 244, tid: 244, name: mediaserver >>> /system ...
- 前端自动化之路之gulp,node.js
随着现在前端技术的不断发展,和各个公司对前端项目开发更新速度的要求,前端自动化越来越受到大家的重视,之前传统的前端开发方式已经越来越不能满足开发的需求了,于是各种自动化工具随之产生了.而gulp就是其 ...