【linux命令讲解大全】089.使用tree命令快速查看目录结构的方法

文章目录

tree

树状图列出目录的内容

补充说明

tree 命令以树状图列出目录的内容。

语法

shell 复制代码
tree [选项] [参数]

选项

列表选项

  • -a:显示所有文件和目录。
  • -d:显示目录名称而非文件。
  • -l:如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
  • -f:在每个文件或目录之前,显示完整的相对路径名称。
  • -x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。
  • -L level:限制目录显示层级。
  • -R:达到最大目录层级时重新运行 tree
  • -P pattern:只显示符合范本样式的文件和目录名称。
  • -I pattern:不列出与给定模式匹配的文件。
  • --ignore-case:在模式匹配时忽略大小写。
  • --matchdirs:在 -P 模式匹配中包含目录名称。
  • --noreport:在树形列表结尾不输出文件/目录计数。
  • --charset X:使用字符集 X 进行终端/HTML 和缩进线输出。
  • --filelimit #:不递归遍历文件数超过 # 的目录。
  • --timefmt <f>:按照指定格式 <f> 打印和格式化时间。
  • -o filename:将输出写入文件而非标准输出。

文件选项

  • -q:用 ? 号代替控制字符,列出文件和目录名称。
  • -N:直接列出文件和目录名称,包括控制字符。
  • -Q:使用双引号引用文件名。
  • -p:列出权限标识。
  • -u:列出文件或目录的所有者名称,若无对应名称则显示用户识别码。
  • -g:列出文件或目录的所属群组名称,若无对应名称则显示群组识别码。
  • -s:列出文件和目录大小。
  • -h:以更加易读的方式打印文件大小。
  • --si:类似于 -h,但使用国际单位制 (1000 的幂次)。
  • -D:列出文件或目录的更改时间。
  • -F:在执行文件、目录、套接字、符号链接、管道名称后添加 */@| 号。
  • --inodes:打印每个文件的 inode 号。
  • --device:打印每个文件所属的设备 ID 号。

排序选项

  • -v:按照版本进行字母数字排序。
  • -t:按照文件和目录的最后修改时间排序。
  • -c:按照文件的最后状态更改时间排序。
  • -U:保持文件未排序状态。
  • -r:反转排序顺序。
  • --dirsfirst:在文件之前列出目录(-U 禁用此功能)。
  • --sort X:选择排序方式,可选值为 nameversionsizemtimectime

图形选项

  • -i:不以阶梯状列出文件和目录名称。
  • -A:使用 ANSI 绘图字符显示树状图而不是 ASCII 字符组合。
  • -S:用 CP437 (控制台) 图形缩进线打印。
  • -n:始终禁用颜色(-C 覆盖此选项)。
  • -C:为文件和目录列表添加着色,以便区分不同类型。

XML / HTML / JSON 选项

  • -X:以 XML 格式打印树状图。
  • -J:以 JSON 格式打印树状图。
  • -H baseHREF:以 HTML 格式打印树状图,并将 baseHREF 作为顶级目录。
  • -T string:替换默认的 HTML 标题和 H1 标题为指定的字符串。
  • --nolinks:在 HTML 输出中禁用超链接。

杂项选项

  • --version:显示版本信息。
  • --help:打印使用帮助信息。
  • --:选项处理终止符。

参数

  • 目录:执行 tree 命令,将列出指定目录下的所有文件,包括子目录中的文件。

实例

列出目录 /private/ 第一级文件名:

shell 复制代码
tree /private/ -L 1
/private/
├── etc
├── tftpboot
├── tmp
└── var

忽略文件夹:

shell 复制代码
tree -I node_modules # 忽略当前目录文件夹 node_modules
tree -P node_modules # 列出当前目录文件夹 node_modules 的目录结构
tree -P node_modules -L 2 # 显示目录 node_modules 两层的目录树结构
tree -L 2 > /home/www/tree.txt # 将当前目录结果存到 tree.txt 文件中

忽略多个文件夹:

shell 复制代码
tree -I 'node_modules|icon|font' -L 2

非树状结构列出目录 /private/ 下的所有文件:

shell 复制代码
tree -if /private/
/private
/private/a1
/private/a2
/private/etc
/private/etc/b1
/private/etc/b2
/private/tftpboot

从零学 python

【从零学习python 】92.使用Python的requests库发送HTTP请求和处理响应
【从零学习python 】91. 使用装饰器和字典管理请求路径的简洁Web应用
【从零学习python 】93.使用字典管理请求路径
【从零学习python 】89. 使用WSGI搭建简单高效的Web服务器
【从零学习python 】88. WSGI接口详解:实现简单高效的Web开发
【从零学习python 】87. 手动搭建HTTP服务器的Python实现及多线程并发处理
【从零学习python 】86. 深入了解HTTP协议及其在浏览器和服务器通信中的作用
【从零学习python 】85.Python进程池的并行计算技术应用
【从零学习python 】84.深入理解线程和进程
【从零学习python 】83. Python多进程编程与进程池的使用
【从零学习python 】82. 基于多线程的聊天程序实现
【从零学习python 】81.Python多线程通信与队列的应用
【从零学习python 】80.线程访问全局变量与线程安全问题
【从零学习python 】79. 线程访问全局变量与线程安全问题
【从零学习python 】78. 文件下载案例
【从零学习python 】77. TCP服务端编程及注意事项
【从零学习python 】76.服务器与客户端:网络通信的关键组成部分
【从零学习python 】75. TCP协议:可靠的面向连接的传输层通信协议
【从零学习python 】74. UDP网络程序:端口问题与绑定信息详解
【从零学习python 】73. UDP网络程序-发送数据
【从零学习python 】72. 深入理解Socket通信及创建套接字的方法
【从零学习python 】71. 网络端口及其作用
【从零学习python 】70.网络通信方式及其应用:从直接通信到路由器连接多个网络
【从零学习python 】69. 网络通信及IP地址分类解析
【从零学习python 】68. Python正则表达式中的贪婪和非贪婪模式
【从零学习python 】67.Python中的re模块:正则替换与高级匹配技术
【从零学习python 】66.深入了解正则表达式:模式匹配与文本处理的利器
【从零学习python 】65. Python正则表达式修饰符及其应用详解
【从零学习python 】64. Python正则表达式中re.compile方法的使用详解
【从零学习python 】63.正则表达式中的re.Match类及其属性和方法介绍
【从零学习python 】62. Python正则表达式:强大的字符串匹配工具
【从零学习python 】61.Python中的property属性详解和应用示例
【从零学习python 】60.探索生成器:迭代的灵活利器
【从零学习python 】59.迭代器:优化数据遍历的高效工具
【从零学习python 】58.Python中的自定义异常及引发异常的方法
【从零学习python 】57.Python中使用with关键字正确关闭资源
【从零学习python 】56. 异常处理在程序设计中的重要性与应用
【从零学习python 】55.Python中的序列化和反序列化,JSON与pickle模块的应用
【从零学习python 】54. 内存中写入数据
【从零学习python 】53. CSV文件和Python的CSV模块
【从零学习python 】52.文件的读写 - Python文件操作指南
【从零学习python 】51.文件的打开与关闭及其在Python中的应用
【从零学习python 】49. Python中对象相关的内置函数及其用法
【从零学习python 】48.Python中的继承与多继承详解
【从零学习python 】47. 面向对象编程中的继承概念及基本使用
【从零学习python 】46. Python中的__new__和__init__方法解析及单例设计模式
【从零学习python 】45.Python中的类方法和静态方法
【从零学习python 】44.面向对象编程中的私有属性和方法
【从零学习python 】43. Python面向对象编程中的实例属性和类属性
【从零学习python 】42.Python中的内置属性和方法
【从零学习python 】41.python魔法方法(二)
【从零学习python 】40.python魔法方法(一)
【从零学习python 】39.面向对象基本语法及应用示例
【从零学习python 】38.Python包的使用及导入方式
【从零学习python 】37.Python自定义模块的使用和注意事项
【从零学习python 】36.Python中使用pip进行第三方包管理的方法与技巧
【从零学习python 】35. Python常见系统模块及其用法
【从零学习python 】34.Python模块的导入和使用方法详解
【从零学习python 】33.装饰器的作用(二)
【从零学习python 】32.装饰器的作用(一)
【从零学习python 】31.深入理解Python中的高阶函数和闭包
【从零学习python 】30.深入理解递归函数和匿名函数
【从零学习python 】29. 「函数参数详解」------了解Python函数参数的不同用法
【从零学习python 】28. Python中的局部变量和全局变量
【从零学习python 】27. Python 函数的使用及嵌套调用
【从零学习python 】25.函数:提高代码编写效率的利器
【从零学习python 】24. Python中的字符串操作与遍历方法
【从零学习python 】23. Python中集合(set)的使用方法和常见操作
【从零学习python 】22. Python中的字典的增删改查及字典的变量
【从零学习python 】21.Python中的元组与字典
【从零学习python 】20. Python列表操作技巧及实例
【从零学习python 】19. 循环遍历列表和列表嵌套的应用
【从零学习python 】18. Python列表的基本操作详解(一)
【从零学习python 】17. Python字符串的format方法(二)
【从零学习python 】16. Python字符串的format方法(一)
【从零学习python 】15.深入了解字符串及字符集编码
【从零学习python 】14.Python字符串常见操作(二)
【从零学习python 】13.Python字符串常见操作(一)
【从零学习python 】12.Python字符串操作与应用
【从零学习python 】11.Python循环语句和控制流程
【从零学习python 】10.Python条件语句和if嵌套详解
【从零学习python 】09.Python 中的条件判断语句
【从零学习python 】08.Python了解位运算符, 运算符优先级
【从零学习python 】07.Python运算符详解:赋值、比较和逻辑运算符
【从零学习python 】06. Python中运用算数运算符进行计算和字符串拼接
【从零学习python 】05. Python中的输出和输入
【从零学习python 】04. Python编程基础:变量、数据类型与标识符
【从零学习python 】03. Python交互式编程及注释详解
【从零学习python 】02. 开发工具介绍
【从零学习python 】01. 安装配置python

相关推荐
LIKEYYLL40 分钟前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
云云3211 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3211 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
cominglately2 小时前
centos单机部署seata
linux·运维·centos
魏 无羡2 小时前
linux CentOS系统上卸载docker
linux·kubernetes·centos
CircleMouse2 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
Karoku0662 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes
木子Linux3 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
mit6.8243 小时前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
鹏大师运维3 小时前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs