私のホームディレクトリのすべてのサブディレクトリから特定の名前を持つすべてのファイルを削除したいと思います。
私は試した:
rm -r file
私のホームディレクトリにありますが、そのディレクトリにファイルがないため、機能しません。
答え1
find . -name "filename" -delete
答え2
@tanteの答えを詳しく説明すると、次のファイルを削除する前に正しいファイルのリストを使用していることを確認できます。
find <source_dir> -name <filename> -print
小切手に有効なリストが表示された場合
find <source_dir> -name <filename> -delete
一時保存ディレクトリを使用して複数のディレクトリでこれを行う場合は、他のオプションがあります。
mkdir <dest_dir>
for i in <list_of_directories>
do
find "$i" -name <filename> -exec /bin/mv {} <dest_dir>
done
# check dest_dir
ls dest_dir
rm -rf <dest_dir>
いつものように、スクリプトを実行する前にスクリプトの正確性を確認し、問題が発生した場合に備えて常にバックアップを準備してください。