|
tree 命令英文理解为树的意思,其功能是是创建文件列表,将目录所有文件以树状的形式列出来。linux中的tree命令默认并不会安装,所以需要通过yum install tree -y来安装此命令。
【用法格式】:
tree [OPTION][directory]
tree [参数] [目录]
说明:
1、注意 tree 命令和后面参数及目标目录文件之间至少有一个空格。
2、命令后面的参数和目录也可以省略。
【参数选项】:
● -a:显示所以文件和目录。
● -d:仅列出目录※
● -f:显示每个文件或目录完整的相对路径名称。※
● -i:不以树状的形式列出文件或目录名称。
●-l:如遇到的性质为符号链接的目录,直接列出该链接所指向的原始目录。
●-x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。
●-P:只显示符合范本样式的文件或目录名称。
●-I:不显示符合范本样式的文件或目录名称
● --noreport:turnoff file/directory count at end of tree listing.
● -p:列出文件或目录的权限标识。
● -s:列出文件或目录的大小。
● -h:以人可读方式列出文件或目录的大小。
● -u:列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码UID。
● -g:列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码GID
● -D:列出文件或目录的更改时间。
●--inodes:列出文件或目录的索引节点号
●--device:Printsthe device number to which the file or directory belongs
● -F:在执行文件,目录,Socket,符号连接,管道名称,各自加上"*","/","=","@","|"号。
● -q:用"?"号取代控制字符,列出文件和目录名称
● -N:直接列出文件和目录名称,包括控制字符
● -v:排序版本的输出
● -r:排序相反的字母顺序输出。
● -t:用文件和目录的更改时间排序。※
● --dirsfirst:目录在文件前面列出。
● -n:不在文件和目录清单加上色彩
● -C:在文件和目录清单加上色彩,便于区分各种类型
● -A:使用ASNI绘图字符显示树状图而非以ASCII字符组合
● -S:打开ASCII线条图形(使用Linux控制台模式字体时很有用)
● -L:只显示当前目录下指定最大深度的目录结构※※。
● --filelimit:不要降临包含多个条目#目录
● -R:递归横倒树的每一级目录(见-L选项) ,并在他们每个人的执行树再次添加“ -o 00Tree.html ”作为一种新的选择。
● -H:打开HTML输出,包括HTTP引用
● -T:设置在HTML输出模式的标题和H1标题字符串
● --charset:设置的字符集输出HTML和画线时使用。
● --nolinks:关闭超链接在HTML输出
● -o:发送输出到文件名
提示:※号的多少表示参数的使用频率及重要程度。更多参数可 man ls 查询。
范例1:直接执行tree命令,不带任何参数,列出当前目录下所有目录文件。
[iyunv@server-Atest]# tree
.
├── dir1
├── dir2
├── dir3
├── file1.txt
├── file2.txt
└── file3.txt
3directories, 3 files
[iyunv@server-Atest]# pwd
/test
范例2:直接执行tree命令,带-d参数,仅列出目录。
[iyunv@server-Atest]# ll
total12
drwxr-xr-x.2 root root 4096 Jan 29 16:50 dir1
drwxr-xr-x.2 root root 4096 Jan 29 16:50 dir2
drwxr-xr-x.2 root root 4096 Jan 29 16:50 dir3
-rw-r--r--.1 root root 0 Jan 29 16:50 file1.txt
-rw-r--r--.1 root root 0 Jan 29 16:50 file2.txt
-rw-r--r--.1 root root 0 Jan 29 16:50 file3.txt
[iyunv@server-Atest]# tree -d
.
├── dir1
├── dir2
└── dir3
3directories
范例 3:直接执行tree命令,带-L 参数,只显示当前目录下指定最大深度的目录结构。
[iyunv@server-Atest]# tree -L 2
.
├── dir1
│ └── text1
├── dir2
│ └── text2
├── dir3
├── file1.txt
├── file2.txt
└── file3.txt
4directories, 4 files
[iyunv@server-Atest]# tree -L 1
.
├── dir1
├── dir2
├── dir3
├── file1.txt
├── file2.txt
└── file3.txt
3directories, 3 files
[iyunv@server-A~]# tree -L 1 -d /test/ #显示该级目录的下级目录
/test/
├── dir1
├── dir2
└── dir3
3directories
[iyunv@server-A~]# tree -L 1 /test/
/test/
├── dir1
├── dir2
├── dir3
├── file1.txt
├── file2.txt
└── file3.txt
3directories, 3 files
[iyunv@server-A~]# tree -L 2 -d /test/
/test/
├── dir1
│ └── text1
├── dir2
└── dir3
范例 4:直接执行tree 命令,带-f参数。在每个文件或目录之前,显示完整的相对路径名称。
[iyunv@server-A ~]#tree -f /test/
/test
├── /test/dir1
│ └── /test/dir1/text1
├── /test/dir2
│ └── /test/dir2/text2
├── /test/dir3
├── /test/file1.txt
├── /test/file2.txt
└── /test/file3.txt
4 directories, 4 files
范例 5:执行tree 命令,带-Dt组合参数, 列出文件或目录的更改时间,并用文件和目录的更改时间排序。
[iyunv@server-A ~]# tree -tD /test/
/test/
├── [Jan 29 16:56] dir2
│ └── [Jan 29 16:56] text2
├── [Jan 29 16:56] dir1
│ └── [Jan 29 16:56] text1
├── [Jan 29 16:50] dir3
├── [Jan 29 16:50] file1.txt
├── [Jan 29 16:50] file2.txt
└── [Jan 29 16:50] file3.txt
4 directories, 4 files
范例 6:执行tree 命令,带-sh组合参数,列出文件或目录的大小,并以人类可读的方式显示。
[iyunv@server-A ~]# tree -sh /test/
/test/
├── [4.0K] dir1
│ └── [4.0K] text1
├── [4.0K] dir2
│ └── [ 0] text2
├── [4.0K] dir3
├── [ 0] file1.txt
├── [ 0] file2.txt
└── [ 0] file3.txt
范例 7:执行 tree -L 2 /test/ >/test/tree.txt 列出/test/目录的2级目录并将结果重定向到/test/tree.txt文件中。
[iyunv@server-A ~]#tree -L 2 /test/ >/test/tree.txt
[iyunv@server-A ~]#cat /test/tree.txt
/test/
├── dir1
│ └── text1
├── dir2
│ └── text2
├── dir3
├── file1.txt
├── file2.txt
├── file3.txt
└── tree.txt
4 directories, 5files
|
|