Seperti pada jawaban sebelumnya (+1 untuk keduanya) triknya adalah menggunakan -type f
predikat.
Perhatikan, bahwa alih-alih -exec rm '{}'
Anda juga bisa menggunakan -delete
predikat. Tapi jangan lakukan itu. Dengan -exec rm '{}'
Anda dapat (dan harus) terlebih dahulu lakukan -exec echo rm '{}'
untuk memverifikasi bahwa ini benar-benar yang Anda inginkan. Setelah itu jalankan kembali perintah tanpa echo
.
Menggunakan -delete
lebih cepat (tidak ada tambahan fork()
dan execve()
untuk setiap file), tetapi ini berisiko karena -delete
berfungsi juga sebagai syarat, jadi:
# delete *.tmp files
find . -type f -name '*.tmp' -delete
tetapi jika Anda HANYA bertukar argumen:
# delete ALL files
find . -type f -name '*.tmp' -delete
Jika Anda perlu find
dan rm
bekerja lebih cepat untuk banyak file, lihat find ... | xargs ... rm
idiom UNIX.