GNU/Linux >> Belajar Linux >  >> Linux

Cara Menemukan dan Menghapus Direktori Kosong di Linux

Sering kali direktori kosong menjadi berantakan di sistem file Linux, dan menjadi tugas yang sulit untuk mencari dan menghapus masing-masing direktori secara manual. Perintah rmdir (hapus direktori ) digunakan di Linux untuk menghapus folder kosong.

Perintahnya cukup mudah digunakan dan sintaks dasarnya adalah:

$ rmdir <empty folder name1> <empty folder name1> ... <empty folder nameN>

Di sini, ‘nama folder kosong1 ‘, ‘nama folder kosong2 ', dll. Adalah nama folder termasuk path lengkapnya. Jika folder berada di direktori yang sama, seperti yang mungkin sudah Anda ketahui, tidak perlu menuliskan path lengkapnya.

Anda juga dapat menggunakan ekspresi wildcard untuk menghapus direktori kosong dengan pola di namanya. Misalnya, untuk menghapus direktori kosong dengan substring 'test ' atas nama mereka, jalankan:

$ rmdir *test*

Namun, untuk menggunakan rmdir kita selalu perlu menentukan nama (atau path lengkap) dari setiap direktori kosong yang akan dihapus. Tidak ada opsi di rmdir untuk mencari direktori kosong secara rekursif lalu menghapusnya.

Kami menggunakan fungsionalitas perintah find dalam kasus seperti itu.

Menemukan dan Menghapus Direktori Kosong di Linux

perintah temukan digunakan untuk mencari file dan folder di Linux berdasarkan parameter yang berbeda seperti nama file, ukuran, jenis, dll. Kami akan menggunakan find untuk menentukan direktori kosong secara rekursif dan kemudian jalankan rmdir untuk menghapus direktori yang ditemukan.

Gunakan argumen '-empty' untuk mencari objek kosong dan menentukan '-type d' untuk hanya menemukan direktori.

$ find path_of_folder_to_search -type d -empty

Untuk menemukan direktori kosong secara rekursif di folder yang sama, jalankan:

$ find . -type d -empty

Sekarang, karena kita sudah memiliki daftar direktori kosong yang ditemukan secara rekursif, kita menggunakan '-exec' argumen dari perintah temukan untuk menjalankan rmdir atas mereka.

$ find . -type d -empty -exec rmdir {} \;

{} place placeholder mengganti setiap entri dalam daftar direktori yang ditemukan dan '\;' menandakan akhir dari perintah yang akan dieksekusi.

Namun, bahkan dengan ini, itu hanya akan melakukan satu putaran pencarian dan menghapus direktori yang kosong, tetapi tidak akan menghapus direktori yang kosong setelah putaran pertama penghapusan.

Untuk mengatasinya, kita cukup menggunakan '-delete' opsi, yang akan berulang kali menghapus semua direktori kosong hingga direktori tingkat atas.

$ find . -type d -empty -delete

Ini adalah bagaimana kita dapat menghapus semua direktori kosong secara rekursif di Linux.

Kesimpulan

Kami belajar cara menggunakan rmdir perintah dan temukan perintah di Linux untuk menghapus direktori kosong secara rekursif. Pelajari lebih lanjut tentang perintah ini di halaman manual masing-masing:

$ man rmdir
$ man find

Terima kasih telah membaca dan bagikan pemikiran Anda di bawah ini!


Linux
  1. Cara Mencari dan Menghapus Direktori Secara Rekursif di Linux

  2. Temukan File dan Direktori di Linux Seperti Profesional

  3. Cara Menghapus File dan Direktori di Linux dari Command Line

  1. Linux Hapus File dan Direktori

  2. Cara Menemukan dan Menghapus Direktori dan File Kosong di Linux

  3. Bagaimana cara mengulang direktori di Linux?

  1. Cara Menemukan dan Menghapus Direktori dan File Kosong di Unix

  2. bagaimana saya bisa menghapus direktori kosong secara rekursif di direktori home saya?

  3. Bagaimana saya bisa secara rekursif menghapus semua file dan direktori kosong di Linux?