【每天一个 Linux 命令】tree命令

【每天一个 Linux 命令】tree命令1.前言本文主要讲解Linux系统上的tree命令的详细使用方法。tree命令是一个小型的跨平台命令行程序,用于递归地以树状格式列出或显示目录的内容。它输出每个子目录中的目录路径和文件,以及子目录和文件总数的摘要。tree程序可以在Unix和类Unix系统(如Linux)中使用,也可以在DOS、Windows和许多其他操作系统中使用。它为输出操作提供了各种选项,从文件选项、排序选项到图形选项,并支持XML、JSON和HTML格式的输出。在这篇教程中,我们将通过使用案例演示如何使用tree命令递归

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1. 前言

本文主要讲解Linux系统上的tree命令的详细使用方法。

tree 命令是一个小型的跨平台命令行程序,用于递归地以树状格式列出或显示目录的内容。它输出每个子目录中的目录路径和文件,以及子目录和文件总数的摘要。

tree程序可以在Unix和类Unix系统(如Linux)中使用,也可以在DOS、Windows和许多其他操作系统中使用。它为输出操作提供了各种选项,从文件选项、排序选项到图形选项,并支持XML、JSON和HTML格式的输出。

在这篇教程中,我们将通过使用案例演示如何使用tree命令递归地列出Linux系统上目录的内容。

img

Linux tree 命令详细使用说明

2. 在各种发行版上安装tree命令

几乎所有的Linux发行版都可以使用tree命令,但是,如果默认情况下没有安装它,可以使用系统的包管理器来安装它,如下所示。

(1) 在RHEL/CentOS 7上安装tree命令工具

yum install tree 

(2) 在Fedora 22+ /RHEL/CentOS 8上安装tree命令工具

dnf install tree 

(3) 在Ubuntu/Debian系统上安装tree命令工具

sudo apt install tree 

(4) 在openSUSE系统上安装tree命令工具

sudo zypper in tree 

3. tree命令的日常使用案例

语法

tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录...]

参数说明

  • -a 显示所有文件和目录。
  • -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
  • -C 在文件和目录清单加上色彩,便于区分各种类型。
  • -d 显示目录名称而非内容。
  • -D 列出文件或目录的更改时间。
  • -f 在每个文件或目录之前,显示完整的相对路径名称。
  • -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上”*“,”/“,”=“,”@“,”|”号。
  • -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
  • -i 不以阶梯状列出文件或目录名称。
  • -L level 限制目录显示层级。
  • -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
  • -n 不在文件和目录清单加上色彩。
  • -N 直接列出文件和目录名称,包括控制字符。
  • -p 列出权限标示。
  • -P<范本样式> 只显示符合范本样式的文件或目录名称。
  • -q 用”?”号取代控制字符,列出文件和目录名称。
  • -s 列出文件或目录大小。
  • -t 用文件和目录的更改时间排序。
  • -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
  • -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。

安装之后,您可以通过下面的使用案例进一步学习tree命令的用法。

要以类似树的格式列出目录内容,请切换到所需的目录并运行tree命令,不带任何选项或参数,如下所示。某些目录需要root权限,请使用sudo调用root权限,获取访问权。

tree 

Linux tree 命令详细使用说明

tree 

它将递归地显示工作目录的内容,显示子目录和文件,以及子目录和文件总数的摘要。您可以使用-a标志显示隐藏文件。

tree -a 

要使用-f列出每个子目录和文件的完整路径内容,如下所示。

tree -f 

Linux tree 命令详细使用说明

您还可以使用-d选项指定tree只打印子目录不显示里面的文件。如果与-f选项一起使用,tree将打印完整的目录路径,如下所示。

tree -d  

Linux tree 命令详细使用说明

tree -df 

可以使用-L选项指定目录树的最大显示深度。例如,如果您希望深度为2,则运行以下命令。

tree -f -L 2 

下面是将目录树的最大显示深度设置为3的使用案例:

tree -f -L 3 

若要仅显示与通配符内容匹配的文件,请使用-P选择并指定您的匹配内容。在本例中,该命令将只列出与cata*匹配的文件,例如Catalina.sh, catalina.bat等将被列出。

tree -f -P cata* 

Linux tree 命令详细使用说明

还可以通过添加–prune选项告诉tree从输出内容中删除空目录,如下所示。

tree -f --prune 

tree还支持一些有用的文件选项,如-p,它以类似ls -l命令的方式打印每个文件的文件类型和权限。

tree -f -p  

此外,要打印每个文件的用户名(如果没有用户名,则为UID),使用-u选项,而-g选项打印组名(如果没有组名,则为GID)。您可以组合-p、-u和-g选项来执行类似于ls -l命令的输出结果,显示文件和目录的详细信息。

tree -f -pug 

还可以使用-s选项打印每个文件的字节大小以及文件名。为了以更易于阅读的格式打印每个文件的大小,使用-h选项并指定大小字母表示千字节(K)、兆字节(M)、千兆字节(G)、tb (T)等。

tree -f -s 

或者

tree -f -h 

要显示每个子目录或文件的最后修改时间的日期,请使用-D选项,如下所示。

tree -f -pug -h -D 

Linux tree 命令详细使用说明

另一个有用的选项是–du,它将显示指定目录所占用的磁盘空间。

tree -f --du 

您还可以使用-o选项将tree的输出内容发送或重定向到文件名,以便稍后进行分析。

tree -o direc_tree.txt 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164140.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • acwing-393. 雇佣收银员(差分约束)

    acwing-393. 雇佣收银员(差分约束)一家超市要每天 24 小时营业,为了满足营业需求,需要雇佣一大批收银员。已知不同时间段需要的收银员数量不同,为了能够雇佣尽可能少的人员,从而减少成本,这家超市的经理请你来帮忙出谋划策。经理为你提供了一个各个时间段收银员最小需求数量的清单 R(0),R(1),R(2),…,R(23)。R(0) 表示午夜 00:00 到凌晨 01:00 的最小需求数量,R(1) 表示凌晨 01:00 到凌晨 02:00 的最小需求数量,以此类推。一共有 N 个合格的申请人申请岗位,第 i 个申请人可以从 ti 时刻开始

    2022年8月9日
    10
  • 远程桌面 指定端口_request获取ip地址

    远程桌面 指定端口_request获取ip地址iocp模型的tcp服务端若采用AcceptEx接受连接,在有客户端连接后要获取客户端的ip和端口信息流程:AcceptEx在工作线程收到客户端连接时复制listensocket的信息到新客户端的socketsetsockopt(pOverlapped->hSocket,SOL_SOCKET,SO_UPDATE_ACCEPT_CONTEXT,(cha…

    2022年9月1日
    4
  • DB9 串口母对母转接头是个坑「建议收藏」

    DB9串口母对母转接头是个坑以前在使用Mini2440开发板时见有人使用「DB9母对母转换头」充当「USB转串口(公)」到「开发板串口(公)」,让杂乱的桌子上少了一根线,让我感到惊奇,原来可以这样,也兴冲冲地购买并使用之。后来的后来,工作不再是烧写烧写系统固件后,慢慢对各种协议标准进一步了解,包括硬件接线的了解。尽管就一个小小的DB9串口接头,公头就应该有一个公头的样子;母头就应该有一个母头的样子。

    2022年4月17日
    39
  • PXE启动原理以及与普通Linux启动的对比

    PXE启动原理以及与普通Linux启动的对比关于PXE部署的详细配置的文章已经有不少了,这篇文章主要讲一下PXE启动的原理以及PXE启动和普通Linux启动的对比。

    2022年6月29日
    25
  • jni 头文件_java.io.file

    jni 头文件_java.io.file1,cmd切换到应用工程目录下如示例中的D:\zxy\IDCardQualityLib2,执行javah命令,红色部分为sdk平台android.jar路径,蓝色部分为生成的jni类名 D:\zxy\IDCardQualityLib>javah-classpath bin/classes;d:\tool\adt-bundle-windows-x86-20131030\adt-b

    2025年11月19日
    6
  • 阿里开源数据同步工具–DataX

    阿里开源数据同步工具–DataX下载地址:QuickStartDataX是异构数据源离线同步工具。能够将MySQLsqlServerOracleHiveHBaseFTP之间进行稳定高效的数据同步。设计思路:网状连接-》星型连接目前支持哪些数据同步?:核心架构:推荐使用python2.67不要使用python3,0使用方法和案例:1.准备一个job….

    2022年6月28日
    53

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号