Як і в попередніх відповідях (+1 для обох), хитрість полягає у використанні -type fпредиката.
Зауважте, що замість -exec rm '{}'вас також можна використовувати -deleteприсудок. Але не робіть цього. З -exec rm '{}'вами ви можете (і повинні) спочатку зробити, -exec echo rm '{}'щоб переконатися, що це дійсно те, що ви хочете. Після цього повторіть команду без echo.
Використання -deleteшвидше (без зайвих fork()та execve()для кожного файлу), але це ризиковано, оскільки -deleteпрацює також як умова, тому:
# delete *.tmp files
find . -type f -name '*.tmp' -delete
але якщо ви САМО міняєте аргументами:
# delete ALL files
find . -type f -name '*.tmp' -delete
Якщо вам коли-небудь потрібно findі rmпрацювати швидше для тонни файлів, ознайомтеся з find ... | xargs ... rmідіомою UNIX.