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

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

以前の記事の1つで、Linuxのファイルシステムで最もディスク容量を消費している最上位のディレクトリとファイルを見つける方法を説明しました。そのようなディレクトリに重要なファイルやサブディレクトリ(古いバックアップ、ダウンロードなど)が含まれていないことに気付いた場合は、それらを削除してディスクの空き容量を増やすことができます。

また読む :ファイルとディレクトリのディスク使用量を見つけるための10の便利なdu(ディスク使用量)コマンド

この短いチュートリアルでは、Linuxファイルシステムでディレクトリを再帰的に検索して削除する方法について説明します。

上記の目的を達成するために、rmコマンドと一緒にfindコマンドを使用できます。 以下の構文を使用します。ここでは、+ 最後に署名すると、複数のディレクトリを同時に読み取ることができます。

$ find /start/search/from/this/dir -name "dirname-to-delete" -type d -exec /bin/rm -rf {} + 

注意 :rmコマンドを使用する必要があります Linuxで使用するのは最も危険なコマンドの1つであるため、慎重に行ってください。重要なシステムディレクトリを誤って削除して、システム障害が発生する可能性があります。

以下の例では、 files_2008というディレクトリを検索します。 再帰的に削除します:

$ $find ~/Downloads/software -name "files_2008" -type d -exec /bin/rm -rf {} + 

検索を使用することもできます およびxargs;次の構文では、-print0 アクションを使用すると、標準出力に完全なディレクトリパスを出力し、その後にヌル文字を続けることができます。

$ find /start/search/from/this/dir -name "dirname-to-delete" -type d -print0 | xargs -0 /bin/rm -rf "{}"

上記と同じ例を使用すると、次のようになります。

$ find ~/Downloads/software -name "files_2008" -type d -print0 | xargs -0 /bin/rm -rf "{}"

最後になりましたが、データのセキュリティが心配な場合は、Linuxで「ファイルとディレクトリ」を完全かつ安全に削除する3つの方法を学びたいと思うかもしれません。

Linuxでのファイルとディレクトリの管理に関するより役立つ記事を読むことを忘れないでください:

  1. fdupes –Linuxで重複ファイルを検索および削除するためのコマンドラインツール
  2. 「FSlint」ツールを使用してLinuxで重複/不要なファイルを検索して削除する方法
  3. ディレクトリ内のすべてのファイルを削除する3つの方法(拡張子が1つまたは少数のファイルを除く)

この記事では、Linuxでディレクトリを再帰的に検索して削除する方法を説明しました。このトピックに追加したい質問や追加のアイデアがある場合は、以下のコメントセクションを使用してください。


Linux
  1. Linuxでファイルを見つける方法

  2. Linuxですべてのディレクトリのファイルを再帰的に検索する方法

  3. Linuxで重複する写真を見つけて削除する方法

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

  2. すべてのファイルとディレクトリを再帰的に一覧表示する方法

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

  1. Linuxを使用してディレクトリとファイルを削除する方法

  2. LinuxでCでディレクトリを再帰的にリストする方法は?

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