Hapus semua file *.swp di bawah direktori saat ini, gunakan find perintah dalam salah satu bentuk berikut:
-
find . -name \*.swp -type f -delete
-deleteopsi berarti find akan langsung menghapus file yang cocok. Ini adalah yang paling cocok dengan pertanyaan aktual OP.
Menggunakan-type fberarti find hanya akan memproses file.
-
find . -name \*.swp -type f -exec rm -f {} \;
find . -name \*.swp -type f -exec rm -f {} +
Opsi-execmemungkinkan find untuk mengeksekusi perintah sewenang-wenang per file. Varian pertama akan menjalankan perintah satu kali per file, dan yang kedua akan menjalankan perintah sesedikit mungkin dengan mengganti{}dengan parameter sebanyak mungkin.
-
find . -name \*.swp -type f -print0 | xargs -0 rm -f
Menyalurkan output kexargsdigunakan dari perintah per-file yang lebih kompleks daripada yang dimungkinkan dengan-exec. Opsi-print0memberi tahufinduntuk memisahkan kecocokan dengan ASCII NULL alih-alih baris baru, dan-0memberi tahuxargsuntuk mengharapkan input yang dipisahkan NULL. Ini membuat konstruksi pipa aman untuk nama file yang berisi spasi.
Lihat man find untuk detail dan contoh lebih lanjut.
find . -name '*.swp' -delete
Setelah menemukan, lakukan penghapusan itu sendiri untuk menghilangkan risiko ruang yang disematkan dalam nama file, ...Untuk keamanan tambahan, pertimbangkan juga untuk menambahkan -type f hanya untuk file.
find /path -type f -name "*.swp" -delete
find /path -type f -name "*.swp" -exec rm -f "{}" +;
bash 4.0
shopt -s globstar
rm -f /path/**/*.swp