ホームディレクトリのすべてのサブディレクトリにある特定の名前のすべてのファイルを削除したい。
私は試した:
rm -r file
私のホームディレクトリにありますが、そのファイルがそのディレクトリに存在しないため、機能しませんでした。
find . -name "filename" -delete
@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>
いつものように、実行前にスクリプトの正確性を確認し、何か問題が発生した場合に備えて常にバックアップの準備をしておいてください。