Linux 中的树命令示例

您已经熟悉 Linux 中的目录结构。 它就像一棵树的根。

这正是 tree 命令的概念。 它以树状方式显示当前目录及其子目录的内容。

在展示 tree 命令的示例之前,让我快速讨论一下如何安装它。

安装树

大多数 Linux 发行版中都没有预装 tree 实用程序。 但是您可以在官方存储库中找到它并轻松安装它。

对于 Debian/Ubuntu 基础:

sudo apt install tree

对于 RHEL 基础:

sudo yum install tree

对于基于 Arch 的发行版:

sudo pacman -S tree

完成后,您需要做的就是将目录或目录路径附加到 tree 命令,它将以树的方式显示文件内容:

tree target_directory

但是 tree 命令不仅仅可以在 Linux 中列出文件。 这里有一些例子。

仅列出目录

如果只想列出指定位置的目录,可以使用 -d 选项。

tree -d target_directory
仅使用 tree 命令列出目录

列出隐藏文件

默认情况下,树命令不会列出隐藏文件,但可以使用 -a 选项。

tree -a target_directory

在这里,我比较了它与默认方式(没有任何选项)一起使用时的不同之处:

使用 tree 命令在 linux 中查找隐藏文件

包含文件路径

如果你想获取每个文件的路径,你需要做的就是使用 -f 选项,它会为您提供每个文件的路径:

tree -f directory
使用 tree 命令列出目录中每个文件的路径

但是如何获得完整路径呢? 好吧,您只需附加一个目录的完整路径(从主目录到目标目录),如下所示:

tree -f /home/sagar/Directory

而且很长。 所以让我分享一个简洁的方法。

在这种情况下,您可以利用该值 pwd 拥有完整路径的价值。 因此,更改要使用树命令的目录。

并使用以下命令,它将为您提供该目录中存在的每个文件的完整路径:

tree -f "$(pwd)"
在树命令中包含每个文件的完整路径

根据级别列出文件和目录

所以如果目录有数百个子目录,而你只想列出第一个某些级别,比如想包含前一个或两个子目录,你可以使用这个功能。

您可以通过将级别(以数字表示)附加到 -L 选项:

tree -L Level

为了 example,在这里,我列出了级别 2 的文件:

tree -L 2
在树命令中根据文件级别列出文件

你可以看到不同之处 在左侧,它显示了所有存在的文件 而在 右侧(我使用第 2 级的地方),它只带来了第 2 级的文件和目录.

列出具有权限的文件

要为每个文件附加文件权限,您需要做的就是附加 -p 选项:

tree -p TargetDirectory

但为了方便起见,我建议将它与 -h 选项以获得更好的可读性。

为了 example在这里我列出了目录中存在的每个文件 MUSIC 目录:

tree -ph MUSIC
使用 tree 命令列出具有权限的文件

使用 tree 命令获取目录的文件大小

tree 命令可以显示指定位置的每个文件和目录的大小,最后还会为您求和。

为此,您将不得不使用 --df 选项,我建议将它与 -h 为了更好的可读性:

tree --df -h TargetDirectory
使用 tree 命令获取目录的文件大小

使用树命令列出基于最后修改的文件

根据修改对文件进行排序有两种方式:

  • 首次修改
  • 最后修改

根据第一次修改对文件进行排序

要根据修改对文件进行排序,您必须使用 -c 选项,默认情况下它将对最先修改的文件进行排序。

在这里,我还将使用 -D 获取修改日期和时间的选项:

tree -cD TargetDirectory
使用 tree 命令列出第一个修改的文件

根据最后修改对文件进行排序

在这种情况下,您将不得不更改 -c 选项将根据第一次修改列出文件。

-r 选项将扭转的影响 -c 选项:

tree -cDr TargetDirectory
在 linux 中使用 tree 命令根据最后修改对文件进行排序

你已经为你整理好了!

总结

您可以看到使用 tree 命令可视化嵌套目录结构是多么容易。

自从我第一次安装它以来,它一直是我的 Linux 命令库中不可或缺的一部分。 我希望您也开始广泛使用它。