Linux的tree命令原来用处那么大,涨知识了!
大家应该熟悉或了解 Linux 中的目录结果,它就像树的根。这正是 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 命令的功能不仅仅是列出文件内容,看下面几个例子。
只列出目录
如果只想列出指定位置的目录,可以使用 -d 选项。
tree -d target_directory
列出隐藏文件
默认情况下,tree 命令不会列出隐藏的文件。可以使用 -a 选项列出位置中的隐藏文件:
tree -a target_directory
看下图中的例子:
让结果中包含文件路径
如果要显示每个文件的路径,只需使用 -f 选项,它将获取每个文件路径:
tree -f directory
那么怎样获取完整路径呢?只需要附加目录的完整路径(从主目录到目标目录),如下所示:
tree -f /home/sagar/Directory
这个命令比较长,下面我们来分享一个相对简单的方法。
这种情况下,我们可以使用 pwd 命令来获取完整路径,用它来代替 tree 命令中的目录。看下面的例子:
tree -f "$(pwd)"
根据级别列出文件和目录
如果目录的层级很深,有数百个子目录,但是我们只想列出前几级的目录,或者前一个或两个目录,可以使用 -L 选项,后跟目录级别:
tree -L Level
比如,我们列出前两级目录:
tree -L 2
通过上图大家可以看到区别,左侧显示了所有文件,右侧使用 -L 2 选项后,只显示了两级的文件。
列出文件权限
要在列表中显示文件权限,需要使用 -p 选项:
tree -p TargetDirectory
不过为了方便起见,我们常常将其与 -h 同时使用,以提高可读性,看下面的例子:
tree -ph MUSIC
使用 tree 命令获取目录的文件大小
tree 命令可以显示指定位置的每个文件和目录的大小,并且也会计算总的大小。该功能需要使用 --df 选项,不过为了提高可读性,建议将其与 -h 共同使用:
tree --df -h TargetDirectory
根据文件修改时间排序
有两种针对文件修改时间排序的方法:
- 根据修改时间正向排序;
- 根据修改时间倒序排序
根据修改时间正向排序
根据文件修改时间进行排序,需要使用 -c 选项,默认情况下,它最先显示最早修改的文件。另外结合 -D 选项来显示文件修改的时间:
tree -cD TargetDirectory
根据修改时间倒序排序
-c 选项默认最先修改的文件在最上方,要将最后修改的文件显示在最上方,需要添加 -r 选项:
tree -cDr TargetDirectory
以上就是本次分分享全部内容,欢迎讨论。
相关文章
- 生产环境 Go 程序内存泄露,用 Pprof 如何快速定位
- 代码重用是什么,怎样更能使程序员受益?
- 如何测试 React 路由 ?
- C 开发人员应遵循的三个显式编程技巧
- 一日一技:8行炫技代码,知识点多得不得了
- 听说面试常考高性能分布式 ID 生成算法?
- 自古以来,JSON序列化就是兵家必争之地
- 一招制敌,搞定前端系统设计和优化题
- 科普文:常见垃圾回收算法与 JS GC 原理
- 面试突击:为什么ConcurrentHashMap是线程安全的?
- Web前端性能优化深度解读,这些细节千万不能忽视
- 手写简易前端框架:Vdom 渲染和 jsx 编译
- 前端开发者也可以懂的基础 System Design
- Webpack5 持久化缓存实践
- 面试突击:HashMap除了死循环还有什么问题?
- 六千字详解!讲透 Vue3 响应式是如何实现的
- 静态代码分析和动态代码分析是互为补充的技术
- 数据结构与算法之背包问题之滚动数组!
- 实战!openFeign如何实现全链路JWT令牌信息不丢失?
- 为什么国内 996 干不过国外的 955呢?