Linux tree命令的使用及功能

描述

大家应该熟悉或了解 Linux 中的目录结果,它就像树的根。这正是 tree 命令的概念。它以树状方式显示当前目录及其子目录的内容。

tree

在使用 tree 命令之前,需要首先安装。

安装 tree

大多数 Linux 发行版中都没有预安装 tree 命令,但是可以在官方库中找到它。

在 Debian 或者 Ubuntu 中可以使用如下命令安装:

sudo apt install tree

在基于 RHEL 的系统中:

sudo yum install tree

基于 Arch 的系统中:

sudo pacman -S tree

安装完成后,就可以直接使用 tree 命令了,tree 命令后跟目录或者目录的路径,它将以树的形式现实文件内容:

tree target_directory

tree

但是 tree 命令的功能不仅仅是列出文件内容,看下面几个例子。

只列出目录

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

tree -d target_directory

tree

列出隐藏文件

默认情况下,tree 命令不会列出隐藏的文件。可以使用 -a 选项列出位置中的隐藏文件:

tree -a target_directory

看下图中的例子:

tree

让结果中包含文件路径

如果要显示每个文件的路径,只需使用 -f 选项,它将获取每个文件路径:

tree -f directory

tree

那么怎样获取完整路径呢?只需要附加目录的完整路径(从主目录到目标目录),如下所示:

tree -f /home/sagar/Directory

这个命令比较长,下面我们来分享一个相对简单的方法。

这种情况下,我们可以使用 pwd 命令来获取完整路径,用它来代替 tree 命令中的目录。看下面的例子:

tree -f "$(pwd)"

根据级别列出文件和目录

如果目录的层级很深,有数百个子目录,但是我们只想列出前几级的目录,或者前一个或两个目录,可以使用 -L 选项,后跟目录级别:

tree -L Level

比如,我们列出前两级目录:

tree -L 2

tree

通过上图大家可以看到区别,左侧显示了所有文件,右侧使用 -L 2 选项后,只显示了两级的文件。

列出文件权限

要在列表中显示文件权限,需要使用 -p 选项:

tree -p TargetDirectory

不过为了方便起见,我们常常将其与 -h 同时使用,以提高可读性,看下面的例子:

tree -ph MUSIC

tree

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

tree 命令可以显示指定位置的每个文件和目录的大小,并且也会计算总的大小。该功能需要使用 --df 选项,不过为了提高可读性,建议将其与 -h 共同使用:

tree --df -h TargetDirectory

tree

根据文件修改时间排序

有两种针对文件修改时间排序的方法:

  • 根据修改时间正向排序;
  • 根据修改时间倒序排序

根据修改时间正向排序

根据文件修改时间进行排序,需要使用 -c 选项,默认情况下,它最先显示最早修改的文件。另外结合 -D 选项来显示文件修改的时间:

tree -cD TargetDirectory

tree

根据修改时间倒序排序

-c 选项默认最先修改的文件在最上方,要将最后修改的文件显示在最上方,需要添加 -r 选项:

tree -cDr TargetDirectory

tree

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分