当前位置: 首页 > news >正文

采用tree命令导出文件夹/文件的目录树(linux)

好的,在 Linux 系统上使用 tree 命令非常强大和常见。与 macOS 类似,大多数 Linux 发行版默认并不安装tree 命令,但都可以通过包管理器轻松安装。


1. 安装 Tree 命令

如果您的系统尝试运行 tree 后提示 command not found,请使用以下命令安装:

  • Debian / Ubuntu / Linux Mint (使用 apt)

    sudo apt update
    sudo apt install tree
  • CentOS / RHEL / Fedora (使用 yumdnf)

    # 对于 CentOS/RHEL (旧版本)
    sudo yum install tree
    # 对于 CentOS/RHEL 8+ 和 Fedora
    sudo dnf install tree
  • Arch Linux / Manjaro (使用 pacman)

    sudo pacman -S tree
  • openSUSE

    sudo zypper install tree

2. 基本用法与常用参数

安装成功后,就可以使用功能丰富的 tree 命令了。

基本命令
常用参数(区分大小写)
参数说明
-d只显示目录,不显示文件。
-L n限制显示的深度。例如 tree -L 2 只显示到当前目录下的第二层。
-a显示所有文件和目录,包括以 . 开头的隐藏文件。
-I pattern排除符合 pattern(模式)的文件或目录。支持通配符。例如 `tree -I "node_modules
-f显示文件的完整路径
-o filename将结果输出到文件。例如 tree -o output.txt
-h以易读的形式打印文件大小(如 1K, 234M, 2G)。
-p打印每个文件的权限(类似于 ls -l 的输出)。
-u显示文件所有者
-g显示文件所属组
-D显示文件的最后修改时间
-F在条目后附加类型标识符/ 表示目录,* 表示可执行文件,@ 表示符号链接。
--du显示目录及其子目录的磁盘使用情况(以块为单位)。
--charset charset指定输出的字符集,例如 ASCIIUTF-8(默认)。
--inodes显示每个文件的 inode 号
--device显示文件所在的设备号

组合使用示例
显示带权限、所有者、大小和时间的详细树状图,并只显示两层深度:

tree -L 2 -h -p -u -g -D

3. 导出目录树到文件

这是您最关心的功能,在 Linux 上主要通过输出重定向-o 参数实现。

方法一:使用重定向符号 (>>>)

这是最通用和常见的方法。

方法二:使用 -o 参数

tree 命令自带输出到文件的选项。

  • 将结果直接输出到 output.log:
    tree -o output.log
    你也可以和其他参数组合:
    tree -d -I "node_modules" -L 4 -o project_structure.txt

4. 输出为其他格式(HTML/XML)

tree 命令的一个强大功能是可以直接生成 HTML 或 XML 格式的目录树,非常适合集成到文档或网页中。

  • 导出为 HTML:

    tree -H . -o output.html

    -H . 选项会生成 HTML 代码,其中的链接路径会以当前目录 (.) 为根。你可以在浏览器中打开 output.html 文件,它通常是一个可点击的导航树。

  • 导出为 XML:

    tree -X -o output.xml

实用示例总结

假设你是一个开发者,想导出一个项目目录的结构,但不想包含 node_modules(很大)和 .git(版本控制)文件夹,并且只关心目录,可以这样做:

tree -d -I "node_modules|.git" -o project_tree.txt

这个命令会生成一个非常干净、只包含项目核心目录结构的文件 project_tree.txt

希望这份详细的 Linux tree 命令指南对您有帮助!

相关文章:

采用tree命令导出文件夹/文件的目录树(linux)

采用tree命令导出文件夹/文件的目录树(linux)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !…...

The 2024 ICPC Asia East Continent Online Contest (I) 4/12 A/F/G/M

M. Find the Easiest Problem 签到题,直接模拟即可点击查看代码 #include<bits/stdc++.h> #define int long long using namespace std; using pii=pair<int,int>; using ll = long long; using ull = unsigned long long; const ll inf = 1e18; const int mod = …...

深入解析 JVM 类加载机制:从字节码到运行时对象

一、概述:为什么需要类加载? Java 语言的核心特性之一是"一次编写,到处运行",这背后的关键在于 Java 虚拟机(JVM)和其类加载机制。当我们编写好 Java 代码并将其编译为 .class 字节码文件后,这些静态的字节码需要被加载到 JVM 中才能变为可执行的动态对象。类…...

博弈论学习(第二天)

博弈的基本理性假设: 一般来说,对于研究博弈问题,需要假设参与者具有完美理性,这分三方面,第一个就是参与者的偏好要有一定性,比如对风险的偏好,不能说一个参与者做第一个决策时属于风险接受型,而做第二个决策时就属于风险规避型。第二个就是参与者对所参与决策的问题具…...

PHP 和 Elasticsearch:给你的应用加个强力搜索引擎

PHP 和 Elasticsearch:给你的应用加个强力搜索引擎 现在做 Web 应用,搜索功能基本是标配。不管你做电商、CMS 还是社交应用,用户都希望搜索又快又准。如果你用 PHP 开发,肯定遇到过数据库搜索的瓶颈——数据一多就慢得要死。这时候 Elasticsearch 就能帮大忙了。 这篇文章会…...

2025年- H146-Lc459. 重复的子字符串(字符串)--Java版 - 实践

2025年- H146-Lc459. 重复的子字符串(字符串)--Java版 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New"…...

坚果云 坚果 jianguoyun 怎么收文件?

怎么收文件? 坚果云 坚果 jianguoyun 怎么收文件?注册、登录、免费的空间是 1GB。创建新的收集 https://www.jianguoyun.com/d/home#/ 查看收集结果:https://www.jianguoyun.com/#/...

mssql创建字段依赖

CREATE TABLE temp061_t ( ID INT IDENTITY(1,1) PRIMARY KEY, RoleType INT NOT NULL, isSior INT NULL ); ALTER TABLE temp061_t ADD CONSTRAINT chk_is_sior CHECK ( (RoleType = 1 AND isSior IS NULL) OR (RoleType = 2 AND isSior IN (0,1,2)) ); -- 合法插入 INSERT IN…...

AT_agc053_b [AGC053B] Taking the middle

考虑将先手最大转化为后手最小。 那么可以发现,第 \(i\) 次操作先手一定能让后手从 \([n - i + 1, n + i]\) 中选取最小的一个元素,一定可以。因为考虑先手拿的顺序不重要,一定存在构造方案,使得能让任意一个元素为中位数。...

一款多功能Linux服务器Web管理面板

为什么使用 Docker 部署 EasyNode? 正如您所说,Docker 部署具有显著优势: 环境隔离与一致性:所有依赖(Node.js, PM2等)都封装在容器内,与宿主机环境隔离,避免冲突。在任何支持 Docker 的 Linux 发行版上,体验完全一致。 简化安装:无需在主机上手动安装 Node.js、配置…...

2025.9.16 测试

2025.9.16 测试1. Problem A: 逆序对(reverse) 根据冒泡,只要逆序对个数够就有方案 经过思考,我们找到第一个操作个数大于的前缀,然后操作前一个前缀,这样前边变有序后,与当前数成逆序对一定是个后缀,然后根据需要选任意个即可 所以我们对任意方案构造出了 \(= 2\) 的解 …...

题解:P12558 [UOI 2024] Heroes and Monsters

题面: (这个没交洛谷,给学弟写的。) \(O(n^3)\) 考虑直接求出所有 \(ans_i\),前缀和回答询问。 \(a,b\) 先排序。由于我们只关心英雄的集合,所以怪兽我们贪心选择,如果我们选这个英雄那么选最前面的怪兽,否则选后面第一个能打死自己的怪兽。显然,合法方案怪兽的前缀会…...

数据分析与产品、运营、市场之间如何有效对齐 - 详解

数据分析与产品、运营、市场之间如何有效对齐 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monosp…...

(附源码)基于Java的学生托管系统的设计与实现 - 实践

(附源码)基于Java的学生托管系统的设计与实现 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", mono…...

SVG动画优化全攻略:从设计到性能提升

本文详细介绍了如何通过清洁设计、路径简化、代码分层和元素复用等技术优化SVG动画,涵盖工具选择、结构设计到CSS动画实现的全流程,帮助开发者创建高性能的SVG动画效果。粉碎动画第四部分:优化SVG SVG动画让我回想起童年观看的汉纳-巴伯拉卡通片。像《Wacky Races》、《The …...

【GitHub每日速递 250919】MCP 生态新工具!Registry 服务器注册服务预览版,AI 开发者部署认证全流程揭秘

原文:https://mp.weixin.qq.com/s/vpm5exQj1imATtK6edQjZA gRPC-Go:高性能开源RPC框架,使用攻略及常见问题全解析 [grpc-go] 是一个基于 HTTP/2 的高性能远程过程调用(RPC)框架的 Go 语言实现。简单讲,它让不同服务能高效地通过网络互相调用函数。适用人群:Go 语言开发者…...

多元积性函数

定义:若函数 \(f(n,m)\) 满足 \(ab \perp xy \Rightarrow f(ax,by)=f(a,b)f(x,y)\),则称 \(f\) 为二元积性函数。 积性分解:将 \(x=\prod p_i^{\alpha _i},y=\prod p_i^{\beta _i}\),则有 \(f(x,y)=\prod f(p_i^{\alpha_i},p_i^{\beta_i})\)。 二元迪利克雷卷积:\((f*g)(n…...

MX 练石 2026 NOIP #7

好难好难好难好难,为数不多的罚坐了。MX 练石 2025 NOIP #6 链接:link 题解:link 时间:4h20min (2025.09.18 13:50~18:10) 题目数:4 难度:A B C D估分:50 + 10 + 10 + 10 = 80 得分:场祭 读题。 开 A,发现可以转化为 \(a_i - i \le a_j - j \land b_i - i \ge b_j - j…...

用Qt打造永远运行的程序/守护进程/程序启动器/实时监测程序运行/后台运行

一、前言说明 最近有个定制需求,希望程序能够一直运行,比如在windows上运行的程序,很可能无法保证不出故障崩溃,有时候可能是程序内部处理异常导致的崩溃,比如有些数据解析没有考虑到一些极端的情况,还有就是用户主动关闭了程序,可能是误关闭,而有些程序,又必须7*24小…...

传话游戏 题解

详细揭秘传话游戏 题解 题目描述 初始时你有一个长度为 \(m\) 的字符串 $ S_1 $ ,然后你可以进行 $ n-1 $ 次操作,每次操作修改当前字符串,形如删掉其中某些元素(可以全删,也可以都不删)。第 \(i\) 次操作得到的字符串记为 $ S_{i+1} $ ,这样得到了由 \(n\) 的字符串形成…...

智驾芯片三强对决:征程6P vs EyeQ Ultra vs Thor

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087智能驾驶芯片是自动驾驶技术的「中枢神经」,其性能直接关乎车辆感知决策的精准度与响应速度。当前,全球智驾芯片市场呈现多元…...

0132_访问者模式(Visitor)

访问者模式(Visitor) 意图 表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 UML 图优点开闭原则:容易添加新的访问者操作,无需修改元素类 单一职责原则:将相关行为集中到一个访问者对象中 灵活性:可以在运行…...

国内AI云市场:挤不进前三,生存将成问题!

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087中国AI云市场已形成“一大四强”的格局,阿里云以35.8%的份额独占鳌头,而第五名之后的厂商合计市场份额不足25%,在残酷的竞争…...

P14053 [SDCPC 2019] Median 题解

P14053 [SDCPC 2019] Median 题解P14053 [SDCPC 2019] Median 题解 一道水题。 观察题意,很快我们可以发现,对于元素 \(i\),其合不合法取决于一定大于 \(i\) 的数的个数与一定小于 \(i\) 的数的个数。 这时,我们只需要统计有多少数大于 \(i\),与多少数小于 \(i\) 即可。 只…...

lQueryDef查询Evaluate报该几何不包含M值问题。

地理数据库既包括空间,又包括属性,属性类似于SQL表,理论上支持标准SQL查询。lQueryDef接口提供了高效查询方法,适用于对属性表或要素类的属性进行筛选和检索。 问题描述 一个简单的面积求和示例如下:IQueryDefFactory queryDefFactory = (IQueryDefFactory)workspace; IQu…...

我的首个RCE漏洞发现之旅:Apache ActiveMQ远程代码执行实战

本文详细讲述了作者如何通过系统化的子域名枚举和端口扫描,发现Apache ActiveMQ的CVE-2023-46604远程代码执行漏洞的全过程,包含具体的工具使用方法和实战技巧。我的首个RCE漏洞发现经历 大家好!在这篇文章中,我将分享我的第一个远程代码执行(RCE)漏洞发现经历。这次漏洞…...

北京市社保费用差额补缴计算工具

北京市社保费用差额补缴计算工具9月18日北京市发布了社会保险缴费工资基数上下限调整的通告,自2025年7月起,社保基数下限由原来的 6821元提高到7162元。 这样一来,之前已经缴了7月份社保且社保基数不到7162元的就需要补缴了。 根据我缴社保时看到的数据,我写了一个北京市社…...

使用自签名SSL证书有什么风险?

自签名SSL证书,指的是由用户自行生成密钥对并予以签名的证书,无需经由第三方权威证书颁发机构(CA)审核。鉴于其具备零成本、生成便捷的特性,该证书常被应用于个人测试、内部临时服务等非生产场景。 然而,相较于权威CA颁发的IP SSL证书,自签名证书在信任机制、安全性、兼…...

CDN可以使用iTrustSSL通配符证书吗?

CDN,即内容分发网络,它是一种通过在多个地理位置分散部署服务器节点,将网站的内容缓存并分发到离用户最近的节点上,从而显著提高网站内容的访问速度、降低延迟,并减轻源服务器负载的技术架构。借助CDN,网站能够更快地响应用户的请求,为用户提供流畅的浏览体验。而SSL证书…...

OpenCvSharp基于颜色反差规避FBA面单贴标

01 规避原理 1.抠图,根据色差或者根据固定包裹位置以及包裹尺寸抠出纸箱图片 2.色差,获取纸箱上所有背景色的灰度值 3.采图,采集大量视野相同,光源相同面单的色差灰度值,整理区间 4.取反,所有非面单灰度值区间的,都认为是纸箱背景色 02根据DPI计算1mm对应像素点。获取吸…...

【API接口】最新可用手机号归属地查询接口

最新可用手机号归属地查询接口,查询手机号码归属地、所属号段、手机卡类型、运营商等信息 使用之前您需要先去注册下key 申请地址: https://www.52api.cn 接口地址:https://www.52api.cn/api/mobile_location 返回格式:application/json 请求方式:GET/POST 请求示例:htt…...

【API接口】最新可用IP地址查询接口

最新可用IP地址查询接口,精准定位IPV4地址的地理位置信息,包括国家、城市、地区、运营商等详细数据,内置双线路来确保数据可用性 使用之前您需要先去注册下key 申请地址: https://www.52api.cn 接口地址:https://www.52api.cn/api/ip_query 返回格式:application/json 请…...

UE5创建的对象无法用ai操控

UE5创建的对象无法用ai操控记得更改这个设置...

【API接口】最新可用喜马拉雅接口

最新可用番茄畅听接口,支持搜索、详情解析、音频链接解析功能,助您快速构建您的专属听书客户端 使用之前您需要先去注册下key 申请地址: https://www.52api.cn 接口地址:https://www.52api.cn/api/xmly 返回格式:application/json 请求方式:GET/POST 请求示例:https://…...

25/09/18 小结

第三期ccb CF519E 2100 虽然是一道2100的题,但还是比较好想的。在树上找到最短距离,明显需要用到公共祖先之类的算法,并且,还要明确的知道节点往上走几步会到哪个节点。因此,学习了dfn序求LCA的方法。 具体来说在dfs序中,两个节点之间的dfn一定会遍历到lca的儿子节点,而…...

【API接口】最新可用番茄畅听接口

最新可用番茄畅听接口,支持搜索、详情解析、音频链接解析功能,助您快速构建您的专属听书客户端 使用之前您需要先去注册下key 申请地址: https://www.52api.cn 接口地址:https://www.52api.cn/api/fanqie_ct 返回格式:application/json 请求方式:GET/POST 请求示例:htt…...

【API接口】最新可用七猫短剧接口

最新可用七猫短剧接口,支持短剧搜索、短剧详情解析、短剧播放链接解析功能,助您快速构建您的专属短剧客户端 使用之前您需要先去注册下key 申请地址: https://www.52api.cn 接口地址:https://www.52api.cn/api/qm_duanju 返回格式:application/json 请求方式:GET/POST 请…...

磁盘分析工具推荐(Wiztree)

前言 磁盘空间占满了真难受,但是又像仓鼠一样不愿意删除,怎么找到有效的办法呢? (买买买!只要磁盘够大,都不是问题!) 但是买买买也是有上限的(除非你一直用机械硬盘去备份保存,物理存储) 所以还是需要删除文件的 那么,问题来了,怎么删除更有效呢? 那当然是,删除…...

用FastAPI和Streamlit实现一个ChatBot

用FastAPI+Streamlit实现一个流式响应的ChatBot前言 本文使用FastAPI+Streamlit实现一个流式响应类ChatGPT的LLM应用,这里只是一个demo,后续会基于此实现一个完整的MCP Client + MCP Server的MCP应用。 Streamlit是专为机器学习和数据科学项目打造的开源Python库,它允许开发…...

搜索百科(2):Apache Solr — 企业级搜索的开源先锋

大家好,我是 INFINI Labs 的石阳。 欢迎回到 《搜索百科》 专栏!每天 5 分钟,带你速览一款搜索相关的技术或产品,同时还会带你探索它们背后的技术原理、发展故事及上手体验等。 上一篇我们认识了搜索技术的基石 Apache Lucene,今天我们将继续这个旅程,了解基于 Lucene 构…...

Markbook Day03

如何打开CMDWindows+系统+终端右键+在终端打开Windows+R,输入CMD打开某个盘,在地址前输入cmd空格,然后回车 选择以管理员方式运行常用DOS命令 盘符切换 查看当前目录下所有文件dir 切换目录cd change directory cd..回到上一个...

re分区为y盘,efi分区为z盘

re分区为y盘,efi分区为z盘...

数组,java学习第五天

数组 数组的定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们,数组的下标是从0开始的 数组声明创建、三种初始化及内存分析 首先必须声明数组…...

文件结构与数据分析专项-解析

在https://exam.didctf.com/practice/questions可以找到题目出这套题主要是想鼓励大家在遇到陌生的文件时,可以主动地去对这类文件进行分析(尤其是将多个文件打包在一起),希望能通过专项练习得到这方面的提升。 源码 这边先给出源码,先是main.go package mainimport (&quo…...

销售能力——Steam平台我们应该做什么游戏?

最近刚看一个视频,李亚鹏卖酒的故事挺有意思,分享一下 https://www.bilibili.com/video/BV1CXkuY2EXk/?spm_id_from=333.1391.0.0&vd_source=106601ca71b1d910c1ac4aa2466b744c 这里李亚鹏卖酒卖不出去,和我们独立游戏作者游戏卖不出去,我觉得是一个原理。 就是完全没…...

平静

也许我该试着让自己的心灵安静下来。 隐入世俗的境地,好好和身边的人聊聊天。 从合租的房子里搬出去,自己一个人独居。如此渴望孤独的星空,又渴望与群星作伴。...

2025.9.18总结

内容:回顾web学习路线 从最开始的1.黑框增删改查 2.连上数据库,但依旧黑框增删改查 3.网页界面增删改查 4.使用springboot+vue3增删改查。 现在回头看使用ai能够轻松的完成一个表的小项目。 不过对于存粹的技术上面没有掌握更多的知识。打算看一看苍穹外卖看一看除增删改查。…...

Codeforces 2144F Bracket Groups 题解 [ 紫 ] [ AC 自动机 ] [ DP ] [ 构造 ]

Bracket Groups:赛时猜出来用 ACAM,结果没猜到结论,我是糖比。 首先判掉一些 corner,如果出现了 \(\texttt{()}\) 为单个字符串,则一定无解。 发现后面不太好做,所以可以套路地猜一猜答案上界,发现最多只需要分成两组。具体地,考虑往极端情况构造,弄出下面两种括号串:…...

Java进制,数据类型拓展Unicode编码学习

今日学习Java 进制 int i = 10; //十进制,结果为10 int i2 = 010; //八进制,结果为8 int i3 = 0x10; //十六进制,结果为16 二进制符号为0b; float j = 0.1f; 数据类型拓展 银行业务用数据类型BigDecimal,可以进行精确比较。 银行业务不用浮点型来表示是因为浮点型都是有精…...

9月18日总结

9月18日,勿忘国耻!!! 激战了三天三夜,Hadoop和Hbase终于配置完成了,但是还没有学会连接hbase学习进度表body { font-family: Arial, sans-serif; margin: 15px } table { width: 100%; border-collapse: collapse } th, td { border: 1px solid rgba(221, 221, 221, 1); …...