tree命令

  1、命令详解

      【功能说明】

        tree命令的中文意思为“树”,功能是以树形结构列出指定目录下的所有内容包括所有文件、子目录及子目录里的目录和文件。

      【语法格式】      

        tree    [option]   [directory]
        tree [选项] [目录]

      【说明】

      1. 注意tree命令以及后面的选项和目录,每个元素之间都至少要有一个空格。
      2. tree命令后若不接选项和目录就会默认显示当前所在路径目录的目录结构。

  2、参数说明

参数选项 解释说明(带 Δ 的为重点)
-a 显示所有文件,包括隐藏文件(以  “.” 点开头的文件 )
-d 只显示目录   Δ
-f 只显示每个文件的全路径
-i 不显示树枝,常与-f参数配合使用
-L level 遍历目录的最大层数,level 为大于0的正整数   Δ
-F 在执行文件、目录、Socket符号链接、管道名称等不同类型文件的结尾,各自加上“*”、 "/"、"="、"@"、"|"号、类似ls命令的-F选项

  3、使用范例
    在讲解案例之前,先做准备工作

    第一步,安装tree命令

    首先检查系统是否安装了tree命令,如果不采用的是最小安装linux系统的方式,哪么tree命令有可能没有安装。此时可用yum命令安装tree命令:

[root@1-230 ~]# rpm -qa tree            #查询tree命令是否安装
tree-1.6.0-10.el7.x86_64                      #如果没有显示就执行下面的命令
[root@1-230 ~]# yum -y install tree     #安装tree命令的yum命令

    第二步,调用系统字符集,防止树形结构显示乱码。

     在使用树形结构时,很可能会因为字符集导致出现乱码问题,比如导致树形的树枝部分都是问号,例如:

[root@1-230 ~]# tree /usr/local/
/usr/local/
?..?€ bin
?..?€ etc
?..?€ games
?..?€ include
?..?€ lib
?..?€ lib64
?..?€ libexec
?..?€ sbin
?..?€ share
?...?..?€ applications
?...?..?€ info
?...?..?€ man

      下面的命令为临时解决树结构乱码的方法

[root@1-230 ~]# LANG=en_US.UTF-8

  4、案例范例

    1、不带任何参数执行tree命令

[root@1-230 etc]# cd ~                 #显示当前目录的结果
[root@1-230 ~]# tree
.       # " . " 以当前目录为起点
└── anaconda-ks.cfg

0 directories, 1 file

     2、以树形结构显示目录下的所有内容(-a的功能)

[root@1-230 ~]# tree -a      #带 -a 参数显示所有文件(包括隐藏文件)
.
├── anaconda-ks.cfg
├── .bash_history             #在linux系统中,以"  .  "点号开头的文件为隐藏文件,默认不显示
├── .bash_logout
├── .bash_profile
├── .bashrc
├── .cshrc
├── .pki
│   └── nssdb
├── .ssh
│   ├── id_rsa
│   ├── id_rsa.pub
│   └── known_hosts
├── .tcshrc
└── .viminfo

3 directories, 11 files

    3、只列出目录下第一层目录的结构(-L 功能)

[root@1-230 ~]# tree -L 1 /          #-L参数后接数字,表示查看目录的层数,不带-L选项默认显示所有层数
/
├── bin -> usr/bin
├── boot
├── dev
├── docker
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── scripts
├── server
├── srv
├── sys
├── tmp
├── usr
└── var

22 directories, 0 files

    4、只显示所有的目录(但不显示文件)。

[root@1-230 ~]# tree -d /usr/local/            #-d 参数表示只显示目录
/usr/local/
├── bin
├── etc
├── games
├── include
├── lib
├── lib64
├── libexec
├── sbin
├── share
│   ├── applications
│   ├── info
│   └── man
│   ├── man1
│   ├── man1x
│   ├── man2
│   ├── man2x
│   ├── man3
│   ├── man3x
│   ├── man4
│   ├── man4x
│   ├── man5
│   ├── man5x
│   ├── man6
│   ├── man6x
│   ├── man7
│   ├── man7x
│   ├── man8
│   ├── man8x
│   ├── man9
│   ├── man9x
│   └── mann
└── src

32 directories

[root@1-230 ~]# tree -dL 1 /usr/local/          #-d参数只显示目录,-L参数显示层数,这里是1层。
/usr/local/
├── bin
├── etc
├── games
├── include
├── lib
├── lib64
├── libexec
├── sbin
├── share
└── src

10 directories

    5、-f选项和-i选项的使用

           使用-f选项可显示完整的路径名称,使用-i选项则不显示树枝部分,示例代码如下:

[root@1-230 ~]# tree -L 1 -f /usr/local/             # -f  显示内容的完整路径
/usr/local
├── /usr/local/bin
├── /usr/local/etc
├── /usr/local/games
├── /usr/local/include
├── /usr/local/lib
├── /usr/local/lib64
├── /usr/local/libexec
├── /usr/local/sbin
├── /usr/local/share
└── /usr/local/src

10 directories, 0 files

[root@1-230 ~]# tree -L 1 -fi /usr/local/         # -i 不显示   “树枝”  ,当需要获取所有文件的完整路径时,这个命令很好用。
/usr/local
/usr/local/bin
/usr/local/etc
/usr/local/games
/usr/local/include
/usr/local/lib
/usr/local/lib64
/usr/local/libexec
/usr/local/sbin
/usr/local/share
/usr/local/src

10 directories, 0 files

    6、使用tree命令区分目录和文件的方法(常用)

[root@1-230 ~]# tree -L 1 -F /boot                      #使用-F参数会在目录后面添加   “/ ”,方便区分目录
/boot
├── config-3.10.0-514.el7.x86_64
├── grub/
├── grub2/
├── initramfs-0-rescue-acfc6ac3b92c4b9d94570fde26f40941.img
├── initramfs-3.10.0-514.el7.x86_64.img
├── initramfs-3.10.0-514.el7.x86_64kdump.img
├── initrd-plymouth.img
├── symvers-3.10.0-514.el7.x86_64.gz
├── System.map-3.10.0-514.el7.x86_64
├── vmlinuz-0-rescue-acfc6ac3b92c4b9d94570fde26f40941*
└── vmlinuz-3.10.0-514.el7.x86_64*

2 directories, 9 files

[root@1-230 ~]# tree -L 1 -F /boot/ |grep /$            #过滤以斜线结尾的所有内容,如果大家看不懂这方法,那么建议等学完grep命令在回头来看
/boot/
├── grub/
├── grub2/

[root@1-230 ~]# tree -L 1 -d /boot/                 #使用-d参数只显示目录树,这样可以轻松过滤内容中的目录。
/boot/
├── grub
└── grub2

2 directories

tree:以树形结构显示目录下的内容的更多相关文章

  1. tree 数状型结构显示目录下的内容

    1. 命令功能 tree中文意思“树”,以树形结构显示目录内容.. 2. 语法格式 tree  [option]   [directory] tree  选项   目录 3. 使用范例 当最小化安装l ...

  2. ls 显示目录下的内容和文件相关属性信息

    1.命令功能 ls命令是“list directory contents”,显示当前目录下的内容和文件属性. 2.语法格式 ls  [option]  file ls  选项  文件名 3.选项说明 ...

  3. 显示目录下的内容--ls

    ls               显示当前目录下的所有文件或者文件夹,但不包括 . 和 .. ls -a                  显示当前目录下的所有文件或者文件夹 ls -l        ...

  4. 【转】linux tree命令以树形结构显示文件目录结构 ---- 不错

    原文网址:http://jingyan.baidu.com/article/acf728fd19c7eff8e510a3eb.html 今天小编来给分享Linux 系统下一个非常有用的命令的使用:tr ...

  5. salesforce 零基础学习(七十)使用jquery tree实现树形结构模式

    项目中UI需要用到树形结构显示内容,后来尽管不需要做了,不过还是自己做着玩玩,mark一下,免得以后项目中用到. 实现树形结构在此使用的是jquery的dynatree.js.关于dynatree的使 ...

  6. 编写Java程序,以树形结构显示国家-直辖市/省/州信息

    返回本章节 返回作业目录 需求说明: 以树形结构显示国家-直辖市/省/州信息 实现思路: 创建显示树形结构的类Tree,在该类中定义Map类型的全局实例属性countryMap,该Map集合用于存放所 ...

  7. php删除目录及目录下的内容

    今天遇到一个问题: java写的API,ppt转图片生成的目录和文件 在使用php调用API完成后,再使用php进行删除时,遇到了删除失败的问题 部署的环境是Ubuntu 导致删除失败的原因是权限的问 ...

  8. linux下怎么用tree命令以树形结构显示文件目录结构?

    tree命令以树状图列出文件目录结构.不过某些Linux上(Centos 6.4)没有tree命令,本文将介绍安装方法. 常用参数: ? 1 2 3 4 5 6 tree -d 只显示目录.   tr ...

  9. linux tree命令以树形结构显示文件目录结构

    http://jingyan.baidu.com/article/acf728fd19c7eff8e510a3eb.html  winscp  传递文件到ubuntu上用winscp

随机推荐

  1. PHP发展的现状和前景

    本人小菜鸟一仅仅,为了自我学习和交流PHP(jquery,linux,lamp,shell,javascript,server)等一系列的知识.小菜鸟创建了一个群. 希望光临本博客的人能够进来交流.寻 ...

  2. HDOJ 2196 Computer 树的直径

    由树的直径定义可得,树上随意一点到树的直径上的两个端点之中的一个的距离是最长的... 三遍BFS求树的直径并预处理距离....... Computer Time Limit: 1000/1000 MS ...

  3. 大规模的I/O流中有效识别大数据并增强时间局部性

    一篇热数据识别存储外文翻译,本文主要在讲思想 原文题目:  HDCat: Effectively Identifying Hot Data in    Large-scale I/O Streams ...

  4. oc30--id

    // // Person.h #import <Foundation/Foundation.h> @interface Person : NSObject - (void)sleep; @ ...

  5. SQL Server 2005数据库定期备份(非常详细)与 SQL Server 2005数据库备份定期清理

     SQL Server 2005数据库定期备份 分类: SQL Server 20052011-01-06 16:25 3320人阅读 评论(1) 收藏 举报 sql server数据库sqlserv ...

  6. bzoj3555 [Ctsc2014]企鹅QQ——字符串哈希

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3555 很久以前就讲过哈希,但一直没写过题,所以这是哈希第一题! 哈希就是把一个字符串映射成一 ...

  7. 利用expect验证主机口令

    ##########mianmi.sh############ #!/usr/bin/expect set ip [lindex $argv ] set password [lindex $argv ...

  8. 浅谈自学Python之路(day3)

    今天的主要内容是: 撒 文件操作 对文件操作的流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: tonghuazhen 听说白雪公主在逃跑 小红帽在担心 ...

  9. 使用node成功安装完某插件typescript后,在使用时提示:tsc(或xxx)不是内部或外部命令,也不是可运行的程序或批处理文件

    具体出错情形: 使用npm安装typescript明明安装成功,但在使用时一直报错,报错语句为  tsc不是内部或外部命令,也不是可运行的程序或批处理文件 具体出错原因: node未正确安装,或相关环 ...

  10. android 自定义view 前的基础知识

    本篇文章是自己自学自定义view前的准备,具体参考资料来自 Android LayoutInflater原理分析,带你一步步深入了解View(一) Android视图绘制流程完全解析,带你一步步深入了 ...