如何在 Markdown 中生成目錄樹?

小皮草發表於2018-12-17

在一個專案的 README 中,我們往往會想把專案的目錄結構進行一下介紹或者註釋,這樣方便其他人接手專案時快速熟悉,同時也方便自己回憶起專案結構。那麼效果比較好的呈現方式自然就是目錄樹,如何快速生成專案的目錄樹呢?(此篇僅針對 MacOS

tree 命令

MacOS 並不自帶 tree 命令,因此我們需要手動安裝一下。

安裝
$ brew install tree
複製程式碼
使用
$ tree
複製程式碼

靈活用法

僅僅是上面這樣使用可能沒法滿足一些情況下的需求。

  • 如何輸出指定層級的目錄樹?

    直接使用 tree 命令,它會把所有層級都輸出,但如果我們只要輸出 2 個層級就可以了,那麼可以這樣使用:

    // -L level 表示只會遍歷到指定層級
    $ tree -L 2
    複製程式碼
  • 如何忽略某些資料夾輸出目錄樹?

    前端專案基本都會有這個問題,就是會把 node_modules 也輸出成目錄樹,一下子目錄樹會無比巨大,而且一般我們也並不需要輸出這個資料夾下的內容,那麼可以這樣使用:

    // -I pattern 表示不會將匹配到的檔案/資料夾輸出,即類似 ignore 的功能
    $ tree -I node_modules
    複製程式碼

當然可能還有其他場景,這時候你可以檢視這個命令的說明:

tree --help 來看看還有什麼引數是可以滿足需求的,可用的引數還是非常多的。

相關文章