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

Linuxで空のディレクトリを見つけて削除する方法

Linuxファイルシステムでは、空のディレクトリが乱雑になることが多く、各ディレクトリを手動で検索して削除するのは困難な作業になります。コマンドrmdirディレクトリを削除 )はLinuxで空のフォルダを削除するために使用されます。

このコマンドの使い方は非常に簡単で、基本的な構文は次のとおりです。

$ rmdir <empty folder name1> <empty folder name1> ... <empty folder nameN>

ここでは、「空のフォルダ名1 ‘、‘空のフォルダ名2 ‘などは、フルパスを含むフォルダの名前です。フォルダが同じディレクトリにある場合は、すでにご存知かもしれませんが、フルパスを書き留める必要はありません。

ワイルドカード式を使用して、名前にパターンが含まれる空のディレクトリを削除することもできます。たとえば、サブ文字列「 test」を使用して空のディレクトリを削除するには ‘名前で、実行します:

$ rmdir *test*

ただし、 rmdirを使用するには 削除する空の各ディレクトリの名前(またはフルパス)を常に指定する必要があります。 rmdirにはオプションはありません 空のディレクトリを再帰的に探してから削除します。

このような場合、findコマンドの機能を利用します。

Linuxで空のディレクトリを見つけて削除する

検索コマンド ファイル名、サイズ、タイプなどのさまざまなパラメータに基づいてLinuxでファイルとフォルダを検索するために使用されます。検索を使用します 空のディレクトリを再帰的に判別してから、 rmdirを実行します 見つかったディレクトリを削除します。

引数'-empty'を使用します 空のオブジェクトを探し、'-type d'を指定します ディレクトリのみを検索します。

$ find path_of_folder_to_search -type d -empty

同じフォルダ内の空のディレクトリを再帰的に見つけるには、次のコマンドを実行します。

$ find . -type d -empty

ここで、空のディレクトリの再帰的に見つかったリストがすでにあるので、'-exec'を使用します。 検索コマンドの引数 rmdirを実行するには それらの上に。

$ find . -type d -empty -exec rmdir {} \;

プレースホルダー{} 見つかったディレクトリと'\;'のリストの各エントリを置き換えます 実行するコマンドの終了を示します。

ただし、これでも、1回の検索を実行して空のディレクトリを削除しますが、最初の削除後に空になったディレクトリは削除しません。

これに取り組むには、単に'-delete'を使用します オプション。これにより、最上位ディレクトリまですべての空のディレクトリが繰り返し削除されます。

$ find . -type d -empty -delete

これは、Linuxですべての空のディレクトリを再帰的に削除する方法です。

結論

rmdirの使用方法を学びました コマンドとコマンドの検索 Linuxでは、空のディレクトリを再帰的に削除します。これらのコマンドの詳細については、それぞれのマニュアルページを参照してください:

$ man rmdir
$ man find

読んでいただきありがとうございます。以下であなたの考えを共有してください!


Linux
  1. Linux ファイルとディレクトリの削除

  2. Unix で空のディレクトリとファイルを見つけて削除する方法

  3. Linuxでディレクトリをループする方法は?

  1. Linuxでディレクトリを再帰的に検索および削除する方法

  2. ホームディレクトリの空のディレクトリを再帰的に削除するにはどうすればよいですか?

  3. Linux ですべての空のファイルとディレクトリを再帰的に削除するにはどうすればよいですか?

  1. プロのようにLinuxでファイルとディレクトリを探す

  2. Linuxでコマンドラインからファイルとディレクトリを削除する方法

  3. Linux で空のディレクトリとファイルを見つけて削除する方法