首页 > 代码库 > 命令-tree

命令-tree

tree命令
     tree - list contents of directories in a tree-like format.
     显示目录的层级结构;
     tree 命令英文理解为树的意思,其功能是创建文件列表,将目录所有文件以树状的形式列出来。linux中的tree命令默认并不会安装,所以需要通过yum install tree -y来安装此命令。
【SYNOPSIS】
     tree [options] [directory]
【OPTIONS】
     -L level:指定要显示的层级;
     -d:仅列出目录;
     -f:显示每个文件或目录完整的相对路径名称;
     -s:列出文件或目录的大小。
     -h:以人可读方式列出文件或目录的大小。
     -D:列出文件或目录的更改时间。
     -t:用文件和目录的更改时间排序。※
【EXAMPLES】
示例准备:
  1. [root@CentOS7-171 ~]# mkdir /test    #创建test目录
  2. [root@CentOS7-171 ~]# cd /test
  3. [root@CentOS7-171 test]# touch file1.txt file2.txt file3.txt  #在目录内3个文件
  4. [root@CentOS7-171 test]# ls
  5. file1.txt  file2.txt  file3.txt
  6. [root@CentOS7-171 test]# mkdir dir1 dir2 dir3   #在目录内创建3个目录
  7. [root@CentOS7-171 test]# touch dir1/text1 dir2/text2 dir3/text3
  8. [root@CentOS7-171 test]# tree
  9. .
  10. ├── dir1
  11.    └── text1
  12. ├── dir2
  13.    └── text2
  14. ├── dir3
  15.    └── text3
  16. ├── file1.txt
  17. ├── file2.txt
  18. └── file3.txt
  19.  
  20. 3 directories, 6 files
     示例1:直接执行tree命令,带-d参数,仅列出目录。
  1. [root@CentOS7-171 test]# tree -d
  2. .
  3. ├── dir1
  4. ├── dir2
  5. └── dir3
  6. 3 directories
     示例2:直接执行tree命令,带-L 参数, 只显示当前目录下指定最大深度的目录结构。
  1. [root@CentOS7-171 test]# tree -L 2
  2. .
  3. ├── dir1
  4.    └── text1
  5. ├── dir2
  6.    └── text2
  7. ├── dir3
  8.    └── text3
  9. ├── file1.txt
  10. ├── file2.txt
  11. └── file3.txt
  12.  
  13. 3 directories, 6 files
  14. [root@CentOS7-171 test]# tree -L 1
  15. .
  16. ├── dir1
  17. ├── dir2
  18. ├── dir3
  19. ├── file1.txt
  20. ├── file2.txt
  21. └── file3.txt
  22.  
  23. 3 directories, 3 files
  24. [root@CentOS7-171 test]# tree -L 1 -d /test/ #显示该级目录的下级
  25. /test/
  26. ├── dir1
  27. ├── dir2
  28. └── dir3
  29.  
  30. 3 directories
  31. [root@CentOS7-171 test]# tree -L 1 /test
  32. /test
  33. ├── dir1
  34. ├── dir2
  35. ├── dir3
  36. ├── file1.txt
  37. ├── file2.txt
  38. └── file3.txt
  39.  
  40. 3 directories, 3 files
     示例3:直接执行tree命令,带-f参数。在每个文件或目录之前,显示完整的相对路径名称。
  1. [root@CentOS7-171 ~]# tree -f /test/
  2. /test
  3. ├── /test/dir1
  4.    └── /test/dir1/text1
  5. ├── /test/dir2
  6.    └── /test/dir2/text2
  7. ├── /test/dir3
  8.    └── /test/dir3/text3
  9. ├── /test/file1.txt
  10. ├── /test/file2.txt
  11. └── /test/file3.txt
  12.  
  13. 3 directories, 6 files
     示例4:执行tree命令,带-Dt组合参数, 列出文件或目录的更改时间,并用文件和目录的更改时间排序。
[
  1. root@CentOS7-171 ~]# tree -tD /test/
  2. /test/
  3. ├── [Mar  5 21:44]  dir1
  4.    └── [Mar  5 21:44]  text1
  5. ├── [Mar  5 21:44]  dir2
  6.    └── [Mar  5 21:44]  text2
  7. ├── [Mar  5 21:44]  dir3
  8.    └── [Mar  5 21:44]  text3
  9. ├── [Mar  5 19:32]  file1.txt
  10. ├── [Mar  5 19:32]  file2.txt
  11. └── [Mar  5 19:32]  file3.txt
  12.  
  13. 3 directories, 6 files
     示例5:执行tree命令,带-sh组合参数,列出文件或目录的大小,并以人类可读的方式显示。
  1. [root@CentOS7-171 ~]# tree -sh /test/
  2. /test/
  3. ├── [ 18] dir1
  4.    └── [193K] text1
  5. ├── [ 18] dir2
  6.    └── [ 6] text2
  7. ├── [ 18] dir3
  8.    └── [ 6] text3
  9. ├── [ 0] file1.txt
  10. ├── [ 0] file2.txt
  11. └── [ 0] file3.txt
  12. 3 directories, 6 files
     示例6:执行tree -L 2 /test/ >/test/tree.txt 列出/test/目录的2级目录并将结果重定向到/test/tree.txt文件中。
  1. [root@CentOS7-171 ~]# tree -L 2 /test/ > /test/tree.txt
  2. [root@CentOS7-171 ~]# cat /test/tree.txt
  3. /test/
  4. ├── dir1
  5.    └── text1
  6. ├── dir2
  7.    └── text2
  8. ├── dir3
  9.    └── text3
  10. ├── file1.txt
  11. ├── file2.txt
  12. ├── file3.txt
  13. └── tree.txt
  14. 3 directories, 7 files




来自为知笔记(Wiz)


命令-tree