运维老手都在偷偷用的tree指令,今天终于公开了!

关于tree

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

描述

tree是一个递归目录列表工具,能以缩进方式显示文件层级结构(若设置了LS_COLORS环境变量还会自动着色),并将结果输出到终端。在不指定参数的情况下,程序默认列出当前目录的内容。当指定目录参数时,tree会递归显示该目录及其子目录下的所有文件和文件夹。

程序运行后会统计并返回所列文件和目录的总数。默认处理符号链接时,会以name -> real-path格式显示链接指向的实际路径。若使用-l选项且符号链接指向的是真实目录,程序则会像处理普通目录一样递归显示该链接指向的目录内容。

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 选项来显示以点"."开头的隐藏文件

支持的通配符运算符:

  • *:匹配零个或多个任意字符
  • ?:匹配单个任意字符
  • [...]:匹配括号内列出的单个字符(可用连字符"-"表示范围,如[A-Z]
  • [^...]:匹配不在括号内列出的单个字符
  • |:分隔多个交替匹配模式

-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 -NF /opt/nginx/

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

- 只显示一层目录 tree -L 1 -d /

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值