以前の記事の1つで、Linuxのファイルシステムで最もディスク容量を消費している最上位のディレクトリとファイルを見つける方法を説明しました。そのようなディレクトリに重要なファイルやサブディレクトリ(古いバックアップ、ダウンロードなど)が含まれていないことに気付いた場合は、それらを削除してディスクの空き容量を増やすことができます。
また読む :ファイルとディレクトリのディスク使用量を見つけるための10の便利なdu(ディスク使用量)コマンド
この短いチュートリアルでは、Linuxファイルシステムでディレクトリを再帰的に検索して削除する方法について説明します。
上記の目的を達成するために、rmコマンドと一緒にfindコマンドを使用できます。 以下の構文を使用します。ここでは、+
最後に署名すると、複数のディレクトリを同時に読み取ることができます。
$ find /start/search/from/this/dir -name "dirname-to-delete" -type d -exec /bin/rm -rf {} +
以下の例では、 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でのファイルとディレクトリの管理に関するより役立つ記事を読むことを忘れないでください:
- fdupes –Linuxで重複ファイルを検索および削除するためのコマンドラインツール
- 「FSlint」ツールを使用してLinuxで重複/不要なファイルを検索して削除する方法
- ディレクトリ内のすべてのファイルを削除する3つの方法(拡張子が1つまたは少数のファイルを除く)
この記事では、Linuxでディレクトリを再帰的に検索して削除する方法を説明しました。このトピックに追加したい質問や追加のアイデアがある場合は、以下のコメントセクションを使用してください。