Linux命令之----tree

命令簡介

tree命令的中文意思爲「樹」,功能是以樹形結構列出指定目錄下的全部內容,包括全部文件、子目錄及子目錄裏的目錄和文件。html

命令格式

tree [option] [directory]
tree [選項] [目錄]正則表達式

說明:bash

  1)注意tree命令以及後面的選項和目錄,每一個元素之間都至少要有一個空格session

  2)tree命令後若不接選項和目錄就會默認顯示當前所在路徑目錄的目錄結構運維

tree命令的參數選項及說明,圖片來源於 【跟老男孩學Linux運維:核心系統命令】spa

舉例

在舉例前,咱們是否是應該安裝好tree命令呢?(若是你也採用最小化安裝Linux系統的方式,那麼tree命令可能沒有安裝,此時咱們應該用yum命令來安裝tree命令)code

[root@king ~]# rpm -qa tree               #<==查詢tree命令是否安裝。
 tree-1.5.3-2.el6.x86_64                  #<==若是沒有顯示就執行下面的命令
[root@king ~]# yum -y install tree        #<==安裝tree命令的yum命令

 臨時解決樹結構亂碼的方法 htm

[root@king ~]# LANG=en_US.UTF-8
例子一:不帶任何參數執行tree命令
[root@king etc]# cd ~
[root@king ~]# tree         #<==顯示當前目錄的結構。
.                   #<==「.」以當前目錄爲起點。
├── anaconda-ks.cfg
├── install.log
└── install.log.syslog
0 directories, 3 files
例子二:以樹形結構顯示目錄下的全部內容(-a的功能)
[root@king ~]# tree -a       #<==帶-a參數顯示全部文件(包括隱藏文件)。
.
├── anaconda-ks.cfg
├── .bash_history          #<==在Linux系統中,以「.」點號開頭的文件爲隱藏文件,默認不顯示。
├── .bash_logout
├── .bash_profile
├── .bashrc
├── .cshrc
├── install.log
...省略若干行...
例子三:只列出根目錄下第一層目錄的結構(-L功能)
[root@king ~]# tree -L 1 / #<==-L參數後接數字,表示查看目錄的層數,不帶-L選項默
認顯示全部層數。
/
├── bin
├── boot
...省略若干行...
├── sys
├── tmp
├── usr
└── var
20 directories, 0 files
例子四:只顯示全部的目錄(但不顯示文件)
[root@king ~]# tree -d /etc/   #<==-d參數表示只顯示目錄。
/etc/
|-- ConsoleKit
|   |-- run-seat.d
|   |-- run-session.d
|   '-- seats.d
|-- NetworkManager
|   '-- dispatcher.d
……省略若干行
[root@oldboy ~]# tree -dL 1 /etc/  #<==-d參數只顯示目錄,-L參數顯示層數,這裏是1層。
/etc/
|-- ConsoleKit
|-- NetworkManager
|-- X11
……省略若干行
例子五:用tree命令來區分目錄和文件的方法(很經常使用滴哦)
[root@king ~]# tree -L 1 -F /boot/      #<==使用-F參數會在目錄後面添加「/」,方便區分目錄
/boot/
├── config-2.6.32-504.el6.x86_64
├── efi/
├── grub/
├── initramfs-2.6.32-504.el6.x86_64.img
├── lost+found/
├── symvers-2.6.32-504.el6.x86_64.gz
├── System.map-2.6.32-504.el6.x86_64
└── vmlinuz-2.6.32-504.el6.x86_64*
[root@king ~]# tree -L 1 -F /boot/|grep /$      #<==過濾以斜線結尾的全部內容                                           
/boot/
|-- efi/
|-- grub/
|-- lost+found/
3 directories, 5 files
[root@king ~]# tree -L 1 -d /boot/      #<==使用-d參數只顯示目錄樹,這樣可輕鬆過濾內容中的目錄
/boot/
|-- efi
|-- grub
'-- lost+found
3 directories

 說明:$在Linux正則表達式中標識以什麼什麼結尾,^表示以什麼什麼開頭,^$表示空行,此處只作簡要說明,如要深究請看博主的Linux正則簡介blog

相關文章
相關標籤/搜索