win和linux打印tree命令目录结构命令

发布时间:2024年01月05日

win

输入tree:
cmd: tree

显示文件夹不显示文件

在这里插入图片描述

可以用相对路径:tree .\test_pipreqs
省略.\也可以:tree test_pipreqs

显示文件

上面只显示文件夹未能显示文件。我们继续看下面:
cmd: tree [path] [/f] [/a]
----------/f 显示每个文件中文件的名称
----------/a 使用ASCII字符,而不使用扩展字符
cmd: tree [path] [/f] [/a]
----------/f 显示每个文件中文件的名称
----------/a 使用ASCII字符,而不使用扩展字符

显示文件夹和文件:
cmd:	tree /f

在这里插入图片描述

能够将文件夹树状图生成到当前文件夹的tree.txt文件中:

文件夹树状图生成到当前文件夹的tree.txt文件中:
cmd:	tree /f >tree.txt

在这里插入图片描述

查看其他参数

tree /?

linux tree命令用法

  1. 基本用法
    tree [directory]
    如果没有指定目录,tree 会显示当前目录的树状结构。
  1. 限制目录深度
    使用 -L 选项可以限制递归的深度。
    tree -L level [directory]
    这里的 level 表示目录的深度级别。
  1. 只列出目录
    tree -d
    使用 -d 选项,tree 将仅列出目录而不包括文件。
  1. 包含隐藏文件
    tree -a
    默认情况下,tree 不显示以点(.)开头的隐藏文件或目录。使用 -a 选项可以包含这些文件。
  1. 使用模式匹配
    tree -P pattern
    通过 -P 选项,可以指定一个模式来匹配文件名,仅显示匹配该模式的文件。
  1. 排除特定文件(-I)
    tree -I pattern
    使用 -I 选项,可以排除匹配给定模式的文件或目录。
    在使用tree命令时,参数 -I 后面跟的是需要排除的目录或文件模式。如果提供一个路径,如-I nginx/mp42m3u8,试图排除名为nginx/mp42m3u8的路径,这是不允许的,应该只提供目录或文件名。
    因此,如果想排除aaa目录,你应该这样使用:
    tree -I ‘aaa’
    如果想排除多个目录,可以用管道符|连接它们:
    tree -I ‘dir1|dir2|dir3’
    注意,当使用-I选项时,匹配的模式是大小写敏感的,并且会匹配到任何位置的路径部分。例如,-I foo将会匹配并排除./foo, ./bar/foo/baz, ./foobar等等。
    还要注意的是,如果你在shell脚本或终端中使用特殊字符(如星号*或问号?),可能需要将模式放在引号内,以防止shell进行模式扩展。
  1. 输出到文件
    tree > output.txt
    可以将 tree 的输出重定向到文件中保存。
  1. 显示文件大小
    tree -s
    在文件旁边显示每个文件的大小。
  1. 显示完整的路径
    tree -f
    显示从根目录开始的每个文件的完整路径。
  1. 颜色输出
    tree -C
    默认情况下,在大多数终端环境中,tree 会有颜色输出。使用 -C 强制颜色输出,有助于区分文件类型。
  1. 按文件类型分类(确实更直观漂亮一点)
    tree --dirsfirst
    使用 --dirsfirst 选项,目录会被放在文件之前列出
  1. 指定字符集
    tree -N
    正常处理不可打印的字符。
  1. 排除某个路径的目录或文件(find命令结合–fromfile)
    tree命令的 -I 参数只能排除指定的文件名或者目录名,而不能直接排除一个特定的路径。-I 参数后面跟的模式是用于匹配任何路径部分的文件名或目录名。

如果想排除特定路径下的目录,可能需要借助其他的shell命令或者脚本来实现。例如,可以使用find命令来查找文件,然后通过管道|传递给tree:
find . -path ./nginx/mp42m3u8 -prune -o -print | tree --fromfile
在这个命令中:
find . -path ./nginx/mp42m3u8 -prune -o -print 命令会查找当前目录下所有的文件和目录,但是会排除 ./nginx/mp42m3u8 路径。
-prune 是 find 命令的一个选项,表示 “不要在这个路径下查找”。
-o -print 表示 “否则(如果不是上面的路径),打印文件名”。
| tree --fromfile 将 find 的结果传递给 tree 命令。–fromfile 参数让 tree 从输入流中读取文件名。
请注意,这个命令可能不会像原生的 tree 命令那样漂亮地格式化输出,因为 tree --fromfile 只是简单地从输入流中读取文件名,并没有考虑它们的层次结构。

文章来源:https://blog.csdn.net/qq_38567039/article/details/135412894
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。