logo

Linux の Tree コマンドと例

UNIX/LINUX システム、MS-DOS、Microsoft Windows では、ツリーは再帰的なディレクトリ リスト プログラムであり、深さでインデントされたファイルのリストを生成します。引数を指定しないと、ツリーには現在のディレクトリ内のファイルがリストされます。ディレクトリ引数が指定されると、ツリーには、指定されたディレクトリ内にあるすべてのファイルまたはディレクトリが順番にリストされます。

ディレクトリはブランチとして、ファイルはリーフとして表示されるため、ユーザーは特定のパス内のファイルとディレクトリの構成を簡単に視覚化できます。



Linux に「tree」コマンドをインストールする

デフォルトでは、tree コマンドはインストールされません。次のコマンドを入力して同じものをインストールします

RHEL / CentOS / Fedora Linux へのインストール

Rhel8 以下のバージョン



sudo yum install tree>

RHEL 8 以降のバージョンでは、dnf コマンドが必要になることに注意してください。
たとえば、RHEL 9 でのインストールの場合です。

sudo dnf install tree>

sudo dnf インストールツリー

Debian / Mint / Ubuntu Linux へのインストール



sudo apt-get install tree>

sudo apt-get インストールツリー

Apple OS X へのインストール

brew install tree>

Linux の Tree コマンドの基本構文

tree [options]>

オプションを追加せずに単純な `tree` コマンドを使用してディレクトリ構造を表示したい場合。

ここで`tree`コマンドはカレントディレクトリから始まるディレクトリ構造を出力します。

Linux の「tree」コマンドで利用可能なオプション

オプション

説明
-ヘルプ -ヘルプ
-バージョン

ツリーのバージョンを出力します。

雄牛vs雄牛
`-a` または `-all`

ツリーには隠しファイルとディレクトリが含まれます。

`-d` または `-dirs-only`

ディレクトリのみをリストします。

`-f` または `-フルパス`

各ファイルのフルパスプレフィックスを出力します。

`-i` または `-ignore-case`

ファイル名を並べ替えるときに大文字と小文字を無視します。

-バツ

find -xdev と同様に、現在のファイル システムのみに留まります。

-私

ワイルドカード パターンに一致するファイルをリストしないでください。

`-p` または `–prune`

指定されたディレクトリをツリーから削除します。

–filelimit #

# 個を超えるエントリを含むディレクトリを下位に移動しないでください。

-t

出力をアルファベット順ではなく最終変更時刻で並べ替えます。

–noreport

ツリー リストの最後にあるファイルとディレクトリのレポートの印刷を省略します。

-s

各ファイルのサイズを名前とともに出力します。

-で

ファイルのユーザー名、またはユーザー名が使用できない場合は UID # を出力します。

-g

ファイルのグループ名、またはグループ名が使用できない場合は GID # を出力します。

-D

リストされたファイルの最終変更時刻の日付を出力します。

–inode

ファイルまたはディレクトリの i ノード番号を出力します。

-デバイス

ファイルまたはディレクトリが属するデバイス番号を出力します。

-F

ls -F のように、ディレクトリには「/」、ソケットファイルには「=」、実行可能ファイルには「*」、FIFO には「|」を追加します。

-q

ファイル名内の印刷不可能な文字を、デフォルトのキャロット表記の代わりに疑問符として印刷します。

-N

デフォルトのニンジン表記の代わりに、印刷不可能な文字をそのまま印刷します。

-r

出力をアルファベットの逆順に並べ替えます。

–dirsfirst

ファイルの前にディレクトリをリストします。

JavaScript文字列のトリミング
-n

色付けを常にオフにし、-C オプションで上書きします。

-C

LS_COLORS 環境変数が設定されていない場合は、組み込みのデフォルトのカラーを使用して、カラー化を常にオンにします。パイプへの出力を色分けするのに役立ちます。

-A

インデント線を印刷するときに ANSI ライン グラフィックス ハックをオンにします。

-S

ASCII ライン グラフィックスをオンにします (Linux コンソール モード フォントを使用する場合に便利です)。このオプションは現在「-charset=IBM437」と同等であり、最終的には廃止される予定です。

-Lレベル

ディレクトリツリーの最大表示深さ。

-R

ツリーの各レベルのディレクトリを再帰的にクロスダウンし (-L オプションを参照)、それぞれのディレクトリで新しいオプションとして `-o 00Tree.html' を追加して Tree を再度実行します。

-H ベースHREF

HTTP 参照を含む HTML 出力をオンにします。 FTP サイトに便利です。 BaseHREF は、HTML 出力を使用する場合のベース FTP の場所を提供します。つまり、ローカル ディレクトリは「/local/ftp/pub」でも構いませんが、「ftp://host-name.organization.domain/pub」として参照する必要があります (baseHREF は「ftp://hostname.organization」である必要があります)。 。ドメイン')。ヒント: このオプションでは ANSI 行を使用しないでください。また、ディレクトリ リストに複数のディレクトリを指定しないでください。 CSS スタイルシート経由で色を使用する場合は、このオプションに加えて -C オプションを使用して、色出力を強制します。

-Tタイトル

HTML 出力モードでタイトルと H1 ヘッダー文字列を設定します。

–charset 文字セット

HTML出力時や線画で使用する文字セットを設定します。

–リンクなし

HTML 出力のハイパーリンクをオフにします。

-o ファイル名 出力をファイル名に送信します。

ディレクトリのツリー階層を表示する

tree -a ./GFG>

ツリー -a ./GFG

入力されたパターンを持つファイルを一覧表示する

tree -P sample* .>

ツリー -P サンプル* 。

ファイル/ディレクトリの数が「N」より多いディレクトリをリストします。

tree --filelimit 3 ./GFG>

ツリー –filelimit 3 ./GFG

ファイルをその権限とともにリストします。

tree -p ./GFG>

ツリー -p ./GFG

ファイルまたはディレクトリが属するデバイス番号を出力します。

tree --device ./GFG>

ツリー –デバイス ./GFG

出力をアルファベット順ではなく最終変更時刻順に出力します。

tree -t ./GFG>

ツリー -t ./GFG

結論

この記事では、ディレクトリ構造を視覚化するための強力なツールである Linux の `tree` コマンドについて学びました。また、隠しファイルを含むファイルとディレクトリの階層を表示し、さまざまな基準に基づいて出力を並べ替えたり、パターンを使用してファイルをフィルタリングしたり、HTML 出力を生成したりすることもできます。全体として、これは非常に便利なツールであることがわかります。