GNU/Linux >> Linux の 問題 >  >> Linux

Linuxで再帰ファイルリストの深さを制限する方法

Linuxでは、lsコマンドを使用します ファイルリスト、つまりディレクトリ内のファイルとディレクトリのリストを表示します。このコマンドは、デフォルトで GNU Coreutilsの一部として使用できます。 。

現在のディレクトリ内のファイルを一覧表示する

コマンド「ls ‘は引数なしで実行され、現在のディレクトリのファイルリストを表示するだけです。

$ ls

さて、「 ls ‘コマンドが実行されると、上記のように、ディレクトリの直接の内容が一覧表示され、ディレクトリ内のディレクトリの内容は処理されません。つまり、ディレクトリの下にあるファイルフォルダツリー構造全体です。

ディレクトリ構造全体を表示

構造全体を表示するには、引数'-R'を使用します または'--recursive' lsの実行中 コマンド。

$ ls -R .

この議論では、 ls サブディレクトリがなくなるまで、フォルダの深さまで下がっていきます。

ただし、場合によっては、特に引数として渡されるディレクトリに多数の最上位サブディレクトリが存在する場合、「 ls」の出力が表示されます。 ‘は、最後まですべてのサブディレクトリの基礎となる構造をリストするため、醜く、長く、さらには不必要に詳細になる可能性があります。

ls」にはオプションがありません ‘ファイルリストの深さを制限することにより、この問題に対処するコマンド。

Linuxにツリーコマンドをインストールする

したがって、これに取り組むために、「ツリー」を利用します。 Linuxの‘コマンド。このコマンドはデフォルトでは使用できず、 Ubuntuにインストールできます。 以下を実行することによるその他のDebianベースのディストリビューション:

$ sudo apt install tree         [On Debian/Ubuntu & Mint]
$ sudo dnf install tree         [On RHEL, CentOS & Fedora]
$ sudo zypper install tree 	[On openSUSE]
$ sudo pacman -S tree           [On Arch Linux] 

ツリー ‘コマンドは、ディレクトリリストをより適切でわかりやすい形式で表示します。

$ tree

ディレクトリパスを引数として渡すこともできます。

$ tree /var/log

上のスクリーンショットに見られるように、コマンドは引数が渡​​されることなくファイル構造全体を再帰的に表示します。

再帰ファイルリストの深さを制限する

表示される構造の深さを制限するには、引数‘-L’を使用します 。

$ tree -L 3 /home

現在、ファイルリストは 3のみ表示されています ずっと下にあるのではなく、深いレベルです。

結論

この記事では、Linuxで再帰的なファイル表示の深さを制限する方法を見てきました。ここで説明する方法とは別に、「ツリー」を使用することに注意してください。 ‘コマンド、他の方法も可能ですが、最も一般的には、findコマンドを使用します。

findコマンドを使用するメソッドは、ディレクトリ構造をフォーマットせずにファイルを単調に表示します。ご質問やご意見がございましたら、下のコメント欄でお知らせください!


Linux
  1. Linuxgrepコマンドの使用方法

  2. Linuxでhistoryコマンドを使用する方法

  3. トップコマンドの出力をLinuxのファイルにキャプチャする方法は?

  1. LinuxでTarコマンドを使用する方法

  2. コマンドラインを使用してLinuxでtar.gzファイルを抽出する方法

  3. Linuxのディレクトリツリーで最も古いファイルを見つける方法

  1. Linuxの履歴コマンドの使用方法

  2. 再帰的なファイルリストの深さを制限するには?

  3. time コマンドの出力を Linux のファイルにリダイレクトする方法は?