Linuxではリストのみのディレクトリが再帰的に使用されますか?

Is List Only Directories Recursively Linux



再帰という言葉は、LinuxまたはUnixオペレーティングシステムのコマンドがフォルダーの内容を処理し、フォルダーにサブフォルダーとドキュメントがある場合でも、命令はそれらすべてのドキュメントで(再帰的に)機能するという事実を指します。子ディレクトリに独自のファイルとフォルダのセット(たとえば、大きなフォルダ)がある可能性があります。さまざまなLinux命令を使用して、指定されたフォルダーの端に到達する前に、各フォルダーを再帰的にトラバースします。そのレベルで、Linux命令はツリーのターンオフに戻り、存在するすべてのサブフォルダーに対してプロセスを繰り返します。このチュートリアルでは、ディレクトリを再帰的に一覧表示するためのすべての方法を学習します。

単純なリストディレクトリの例

まず、単純なlistコマンドを使用してLinuxシステムからすべてのディレクトリを一覧表示する方法を知っている必要があります。コマンドラインターミナルを開き、以下のls ’コマンドを試して、ディレクトリのみを一覧表示します。ディレクトリだけでなく、そこにあるサブフォルダとファイルの総数も一覧表示されます。出力には、所有者、グループ、読み取り/書き込み特権、およびフォルダーの作成日に関する情報を含むフォルダーが表示されます。







$ ls -l



Linuxシステム内のすべてのディレクトリとファイルを一覧表示するには、listコマンドで単純な-lの代わりに-laを使用する必要があります。したがって、更新されたコマンドを実行して実行します。出力には、すべてのファイルとフォルダーがそれらの追加情報とともに表示されます。



$ ls -la





追加情報なしでディレクトリを単純に一覧表示するには、以下のコマンドに続けてフラグ-dを試してください。

$ ls –d * /



同じコマンドをほとんど変更せずに使用して、フォルダーとその追加情報を一覧表示することもできます。次のように、このコマンド内に-lフラグを追加する必要があります。

$ ls –l –d * /

特定のホームディレクトリ内のファイルの総数のみを確認するには、シェルで以下に示すコマンドを試してください。 Linuxオペレーティングシステム内のファイルの総数を取得します。

$ ls –l | egrep –v ‘^ d’

ディレクトリを再帰的にリストする例

Linuxシステムで使用できる再帰コマンドにはさまざまな種類があり、ディレクトリを再帰的に一覧表示するために使用できます。それぞれを個別に理解するために、LinuxディレクトリにDocumentsという名前のファイルが5つあると仮定します。

-lRフラグを使用して再帰的にリストする

クエリで-lRフラグを使用して、Linuxシステムのすべてのディレクトリを再帰的に一覧表示するのが、これを行う最初の方法です。以下のlistコマンドを実行すると、出力に示されているように、すべてのフォルダーとそのサブフォルダーがボーナスの詳細とともに一覧表示されます。

$ ls -lR

Linuxシステムの特定のフォルダーまたはディレクトリからすべてのファイルまたはフォルダーを再帰的にリストします。この目的のために、特定のディレクトリのロケーションパスを追加して、再帰的に一覧表示します。以下の更新されたコマンドを使用して、ホームディレクトリにあるDocumentsディレクトリのすべてのファイルとフォルダを再帰的に一覧表示します。出力には、Documentsフォルダー内のすべてのファイルとフォルダーが追加情報とともに表示されます。

$ ls –lR / home / aqsayasin / Documents /

検索コマンドを使用して再帰的にリストする

すべてのLinuxシステム(macOS、UnixライクなOSなど)が-Rを使用してディレクトリを一覧表示できるわけではないことを明確にしてください。その場合、私たちのニーズを満たすために利用できる他のコマンドがあります。それはfind andprintコマンドです。このコマンドでは、-lsコマンドを使用して、フォルダーへのパスを指定します。コマンドで-lsが使用されている場合、これは、特定のディレクトリの常駐ファイルおよびフォルダに関する追加情報も表示することを意味します。シェルで以下のコマンドを試して、Documentsディレクトリのすべてのファイルとフォルダを再帰的に一覧表示します。

$ find / home / aqsayasin / Documents / -print -ls

ここで、少し変更を加えて、シェルでまったく同じ命令を試す必要があります。このコマンドで-lsフラグを使用して、ファイルに関する追加情報の表示を停止することは避けます。シェルで以下のクエリを実行すると、出力が表示されます。

$ find / home / aqsayasin / Documents / -print

-duコマンドを使用して再帰的にリストする

別の新しい方法でファイルまたはディレクトリを再帰的に一覧表示する別の例を見てみましょう。今回は、目的を達成するために-duコマンドを使用します。このコマンドには、-aフラグが含まれています。フラグとともに、ディレクトリの場所も指定する必要があります。ターミナルシェルで以下の命令を実行して、Documentsディレクトリのすべてのフォルダまたはファイルを再帰的に一覧表示します。以下に示すように、出力には5つのレコードが表示されます。このコマンドは、各ファイルに存在するバイト数も表示することがわかります。

$ du –a / home / aqsayasin / Documents /

ツリーコマンドを使用して再帰的にリストする

最後になりましたが、ファイルまたはフォルダーを再帰的に一覧表示するための非常にシンプルで使いやすいツリーコマンドメソッドがあります。これまで、このコマンドでフラグを使用することはありません。キーワードツリーとともにディレクトリの場所を指定する必要があります。以下のコマンドを使用した例を見てみましょう。出力は、ディレクトリDocumentsのツリー分岐タイプの出力を示しています。出力に0個のディレクトリと5個のファイルが表示されます。

$ツリー/ home / aqsayasin / Documents /

同じツリーコマンドを別の場所で試してみましょう。今回は、ユーザーaqsayasinの「ホーム」ディレクトリのフォルダを再帰的に一覧表示します。出力には、合計14の異なるフォルダー、サブフォルダー、および5つのファイルを持つフォルダーHomeのブランチが表示されます。

$ツリー/ home / aqsayasin /

結論

ディレクトリとファイルを再帰的に一覧表示するために、すべての再帰的な方法を試しました。たとえば、-lRフラグ、検索と印刷、du、treeコマンドなどです。