ディレクトリツリーの深さを制限する
大規模なディレクトリ構造を扱う場合、ツリー全体を表示すると圧倒的になることがあります。このステップでは、表示するディレクトリツリーの深さを制限する方法を学びます。
より深いディレクトリ構造の作成
この機能をよりよく説明するために、もっと複雑なディレクトリ構造を作成しましょう。
mkdir -p ~/project/backups/2023/{January,February,March}/{week1,week2,week3}
touch ~/project/backups/2023/January/week1/data.bak
これにより以下が作成されます。
- ログと同様の構造を持つ
backups
ディレクトリ
- 各月内に週を表す追加の階層
- 1月の第1週のフォルダにサンプルのバックアップファイル
-L オプションを使用して深さを制限する
-L
オプションを使用すると、ツリーを表示する深さのレベルを指定できます。表示を3レベルに制限してみましょう。
tree -L 3
以下のような出力が表示されるはずです。
.
├── backups
│ └── 2023
│ ├── January
│ ├── February
│ └── March
└── logs
└── 2023
├── January
├── February
└── March
週のディレクトリとその中のファイルは表示されていないことに注意してください。これは、それらが4レベル目にあり、表示を3レベルに制限したためです。
深さレベルを変更する
-L
の後の数値を調整することで、表示するレベルを増減できます。深さを4に設定して試してみましょう。
tree -L 4
今度は週のディレクトリが表示されるはずですが、その中のファイルは表示されません。
.
├── backups
│ └── 2023
│ ├── January
│ │ ├── week1
│ │ ├── week2
│ │ └── week3
│ ├── February
│ │ ├── week1
│ │ ├── week2
│ │ └── week3
│ └── March
│ ├── week1
│ ├── week2
│ └── week3
└── logs
└── 2023
├── January
│ └── log1.txt
├── February
│ └── log2.txt
└── March
└── log3.txt
複雑なディレクトリ構造の概要を把握するだけでよい場合、ツリーの深さを制御できることは便利です。