前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux tree命令,Linux tree命令实例详解

linux tree命令,Linux tree命令实例详解

作者头像
全栈程序员站长
发布2022-09-15 10:02:33
3.1K0
发布2022-09-15 10:02:33
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

关于tree

tree以树状格式列出目录的内容。 这是一个非常简洁实用的程序,您可以在命令行中使用它来查看文件系统的结构。

描述

tree是一个递归目录列表程序,它生成一个深度缩进的文件列表(如果设置了LS_COLORS环境变量,则会着色)并输出为tty。 如果没有参数,树将列出当前目录中的文件。 当给出目录参数时,树依次列出在给定目录中找到的所有文件和/或目录。 树然后返回列出的文件和/或目录的总数。

默认情况下,遇到符号链接时,符号链接引用的路径将以以下格式打印在链接名称之后:

name -> real-path

如果给出`-l’选项并且符号链接指的是实际目录,则树将遵循符号链接的路径,就像它是真实目录一样。

安装

linuxidc@linuxidc:~$ sudo apt install tree

185c99d123e5c020284f624368512107.png
185c99d123e5c020284f624368512107.png

版本

linuxidc@linuxidc:~$ tree –version

tree v1.7.0 (c) 1996 – 2014 by Steve Baker, Thomas Moore, Francesc Rocher, Florian Sesser, Kyosuke Tokoro

980843a47e834ffaa31df1b984017578.png
980843a47e834ffaa31df1b984017578.png

tree语法

tree [-adfgilnopqrstuxACDFNS] [-L level [-R]] [-H baseHREF] [-T title]

[-o file name] [–nolinks] [-P pattern] [-I pattern] [–inodes]

[–device] [–noreport] [–dirsfirst] [–version] [–help]

[–filelimit #] [–si] [–prune] [–du] [–timefmt format]

[directory …]

选项

–help

输出详细的使用情况列表。

–version

输出tree的版本。

-a

打印所有文件。 默认情况下,tree不会打印隐藏文件(以点“.”开头的文件)。 在任何情况下,tree都不会打印文件系统构造`.’ (当前目录)和`..'(上一个目录)。

-d

仅列出目录。

-f

打印每个文件的完整路径前缀。

-i

tree不会打印缩进线。 与-f选项一起使用时很有用。

-l

跟随目录的符号链接,就像它们是目录一样。 避免了导致递归循环的链接。

-x

仅保留当前文件系统,与find -xdev一样。

-P pattern

仅列出与通配符模式匹配的文件。 注意:您必须使用-a选项来考虑以点“。”开头的那些文件。 匹配。 有效的通配符运算符是“*”(任何零个或多个字符),“?” (任何单个字符),`[…]'(括号内列出的任何单个字符(可选 – – 破折号)可用于字符范围:ex:[AZ])和`[^ …]'( 任何单个字符未在括号中列出)和“|”分隔交替模式。

-I pattern

不要列出与通配符模式匹配的文件。

–prune

从输出中创建tree修剪空目录,与-P或-I一起使用时非常有用。

–filelimit #

不要下载包含多个#条目的目录。

–timefmt format

打印(隐含-D)并根据使用strftime语法的格式字符串格式化日期。

–noreport

忽略在tree列表末尾打印文件和目录报告。

-p

打印每个文件的保护(根据ls -l)。

-s

打印每个文件的大小以及名称。

-u

打印文件的用户名或UID #(如果没有可用的用户名)。

-g

打印文件的组名称或GID #(如果没有可用的组名称)。

-D

打印列出文件的上次修改时间的日期。

–inodes

打印文件或目录的inode编号

–device

打印文件或目录所属的设备编号

-F

根据ls -F,为目录添加一个’ /’,为套接字文件添加一个’ =’,为可执行文件添加一个’ *’,为FIFO添加一个’ |’

-q

将文件名中的不可打印字符作为问号打印,而不是使用默认胡萝卜表示法。

-N

按原样打印不可打印的字符,而不是默认的胡萝卜表示法。

-r

按反向字母顺序对输出进行排序。

-t

按上次修改时间而不是按字母顺序对输出进行排序。

–dirsfirst

在文件之前列出目录。

-n

始终关闭着色,由-C选项覆盖。

-C

如果未设置LS_COLORS环境变量,则使用内置颜色默认值始终打开颜色。 用于将输出着色到管道。

-A

当打印压痕线时,打开ANSI线图形hack。

-S

打开ASCII线图形(使用linux控制台模式字体时很有用)。 此选项现在等效于`charset=IBM437’,最终将被折旧。

-L level

目录树的最大显示深度。

-R

递归地遍历树的每个级别目录(请参见-L选项),并在每个目录下执行树,再次添加`-o 00Tree.html’作为一个新选项。

-H baseHREF

打开HTML输出,包括HTTP引用。适用于ftp站点。当使用HTML输出时,baseHREF给出基本ftp位置。也就是说,本地目录可能是“/local/ftp/pub”,但是它必须被引用为“ftp://hostname.organiz.domain/pub”(baseHREF应该是“ftp://hostname.organiz.domain”)。提示:不要使用带有此选项的ANSI行,并且在目录列表中不要给出多个目录。如果您想通过CSS样式表使用颜色,除了这个选项外,还可以使用-C选项强制输出颜色。

-T title

在HTML输出模式下设置标题和H1标题字符串。

–charset charset

设置输出HTML和绘图时使用的字符集。

–nolinks

关闭HTML输出中的超链接。

-o file name

将输出发送到文件名。

tree 实例

linuxidc@linuxidc:~$ tree

显示tree中当前目录和子目录的内容。 输出采用图形形式,类似于以下示例:

.

├── examples.desktop

├── linuxidc.com

│ ├── linuxidc

│ ├── linuxidc.c

│ ├── linuxidc.com

│ ├── linuxidc.sh

│ └── share

│ ├── Linux公社.txt

│ ├── Linux公社www.linuxidc.com测试文件.txt

│ └── www.linuxidc.com.png

├── linux.linuxidc.com

├── www.linuxidc.com

├── 公共的

├── 模板

├── 视频

├── 图片

├── 文档

├── 下载

├── 音乐

└── 桌面

├── linuxidc.com

├── linux.linuxidc.com

├── m.linuxidc.com

├── www.linuxidc.com

└── www.linuxidc.com.png

16 directories, 9 files

69cef9f4951f98d34b7d267236294b0c.png
69cef9f4951f98d34b7d267236294b0c.png

linuxidc@linuxidc:~/linuxidc.com$ tree -I ‘linuxidc*|bin|lib’

2d256abd5b8cf7909a75954859d4fe37.png
2d256abd5b8cf7909a75954859d4fe37.png

显示树,没有以linuxidc开头,也没有包含模式中指定的’bin’或’lib’。

linuxidc@linuxidc:~$ tree -P ‘l*’

c5f39a42a1cc3d05696ba8fd13369ee3.png
c5f39a42a1cc3d05696ba8fd13369ee3.png

使用大写“P”,您可以列出带有模式的文件。 此模式示例显示仅包含以l开头的目录的树或包含以l开头的文件的目录。

linuxidc@linuxidc:~$ tree -p

使用小写的“p”,您可以列出一个树,它也显示文件权限。

1f06b41ef525dd5759c732950cd265f6.png
1f06b41ef525dd5759c732950cd265f6.png

只显示一层目录

linuxidc@linuxidc:~$ tree -Ld 1 /home/

或者

linuxidc@linuxidc:~$ tree -L 1 -d /home/linuxidc

1c23ec23050ca6c86feea0f4b98dab21.png
1c23ec23050ca6c86feea0f4b98dab21.png

查看某一个目录的文件结构

linuxidc@linuxidc:~$ tree /home/linuxidc

0b1331709591d260c1c78e86d0c51c18.png
0b1331709591d260c1c78e86d0c51c18.png

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/164130.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档