Treeコマンドの使い方とオプションについて (Mac/CentOS)

スポンサーリンク

Treeコマンドはファイルやディレクトリの一覧をツリー形式に成形して表示してくれるコマンドです。ブログとかで階層表示してるの見ると自分で成形してるのかなと思ってましたが、さすがにコマンドがあったみたいですね。Mac でも Linux でも使い方は同じです。

インストール

Macでの  Tree コマンドのインストールには  Homebrew を使用します。

$ brew install tree
==> Downloading http://mama.indstate.edu/users/ice/tree/src/tree-1.7.0.tgz
######################################################################## 100.0%
==> make prefix=/usr/local/Cellar/tree/1.7.0 MANDIR=/usr/local/Cellar/tree/1.7.0/share/man/man1 CC=clang CFLAGS=-fomit-frame-pointer LDFLAGS= OBJS=
🍺  /usr/local/Cellar/tree/1.7.0: 7 files, 128K, built in 2 seconds
$ tree --version
tree v1.7.0 (c) 1996 - 2014 by Steve Baker, Thomas Moore, Francesc Rocher, Florian Sesser, Kyosuke Tokoro

CentOSの場合は Yum でインストール可能です。

$ sudo yum -y install tree

Treeコマンドの使い方とオプション

コマンドは基本tree [path] [option]と指定して実行します。PATHを指定しなかった場合、カレントディレクトリとなります。オプションについては色々ありますが、使う機会がありそうなのだけ抜き出してみました。その他のオプションはtree --helpで調べてみて下さい。

オプション 機能
-a 隠しファイルやフォルダも全て表示
-d ディレクトリのみ表示
-f 相対パスを表示
-h ファイルサイズを表示
-u オーナーを表示
-g グループを表示
-L <階層> 表示する階層を指定
--help ヘルプ

使い方は次のような感じです。-a で隠しファイルも対象にして -L で 2階層まで表示させています。

$ tree -a -L 2
.
├── .git
│   ├── HEAD
│   ├── config
│   ├── description
│   ├── hooks
│   ├── index
│   ├── info
│   ├── logs
│   ├── objects
│   ├── packed-refs
│   └── refs
├── .gitignore
├── LICENSE
├── README.md
└── centos6
    ├── builders
    ├── packer.json
    └── provisioners

9 directories, 9 files