GNU/Linux >> Belajar Linux >  >> Linux

Cara menghapus folder dengan nama tertentu

Jika direktori target kosong, gunakan find, filter hanya dengan direktori, filter berdasarkan nama, jalankan rmdir:

find . -type d -name a -exec rmdir {} \;

Jika Anda ingin menghapus isinya secara rekursif, ganti -exec rmdir {} \; dengan -delete atau -prune -exec rm -rf {} \; . Jawaban lain menyertakan detail tentang versi ini, beri kredit juga.


Gunakan find untuk nama "a" dan jalankan rm untuk menghapus nama yang sesuai dengan keinginan Anda, sebagai berikut:

find . -name a -exec rm -rf {} \;

Uji dulu menggunakan ls ke daftar:

find . -name a -exec ls {} \;

Untuk memastikan ini hanya menghapus direktori dan bukan file biasa, gunakan arg "-type d" (seperti yang disarankan di komentar):

find . -name a -type d -exec rm -rf {} \;

"{}" adalah substitusi untuk setiap file "a" yang ditemukan - perintah exec dieksekusi terhadap masing-masing file dengan substitusi.


Ini juga berfungsi - ini akan menghapus semua folder yang disebut "a" dan isinya:

rm -rf `find . -type d -name a`

Linux
  1. Cara mengaudit izin dengan perintah find

  2. Cara Menemukan dan Menghapus Foto Duplikat di Linux

  3. Bagaimana Cara Menemukan File Dengan Subpath Tertentu?

  1. Bagaimana cara mendapatkan nama file dengan Linux 'find'?

  2. Bagaimana cara menggunakan regex dengan perintah find?

  3. Temukan semua file dengan nama yang mengandung string

  1. Cara Menemukan File dengan Perintah fd di Linux

  2. Cara menghapus \r karakter dengan sed

  3. Cara menghapus semua file yang dimulai dengan string tertentu di Linux