utte15 / 78

findでサブディレクトリを含めて.tmpファイルを削除する

ホームディレクトリの cache ディレクトリの中から、サブディレクトリの中も含めて、拡張子が .tmp のファイルをすべて削除してください。それ以外のファイルは残します。

解説
find cache -name "*.tmp" -delete

rm cache/*.tmp では、シェルが展開するのは cache 直下だけなので、サブディレクトリの .tmp は残ります。深さを問わず探すのは find の役目です。-name で名前に一致するファイルを選び、-delete で削除します。

慣れないうちは、-delete を付けずに実行して、消える対象を確認してから付け足すと安全です。find ... -exec rm {} \; でも同じ結果になります。rm -r はディレクトリごと削除する危険なオプションなので、対象をよく確かめてから使います。

使うコマンド

関連する問題