Perintah yang digunakan untuk menghapus direktori yang terdapat banyak kontennya pada Linux adalah

Kembali ke hal dasar lagi dalam administrasi server Linux. Karena kita menggunakan shell untuk urusan sehari – hari maka harus jago dalam navigasinya. Untuk menghapus file di Linux sudah kita kenal perintah rm dan kalau anda pernah mencoba mengeksekusinya pada sebuah direktori pasti muncul pesan error: rm: cannot remove 'nama_folder/': Is a directory. Wajar kok memang bukan alat yang tepat walaupun bisa dipaksa. 🙂

Nah… ternyata Linux memiliki perintah khusus untuk menghapus direktorinya, yakni rmdir. Cara menggunakannya sendiri sama mudahnya:

rmdir nama_folder

Selesai. Haha. 😀

Tapi kalau folder tersebut ada isinya akan muncul pesan kesalahan lain: rmdir: failed to remove `nama_folder': Directory not empty. Kalau ini bisa diatasi memakai perintah berikut:

rm -rf nama_dir

Harap hati – hati saja dalam menggunakan rm -rf karena bisa membersihkan semua data anda kalau lokasi aktif shell anda tidak tepat.

Tapi saya sarankan untuk menghapus sebuah direktori beserta isinya memakai perintah ini:

rm -ri nama_folder

Kenapa? Karena ini sifatnya interaktif jadi lebih aman karena kita tahu file atau direktori apa yang dihapus. Dan akan meminta konfirmasi kita baru diproses. Tapi kalau filenya banyak bisa repot sekali memang.

Sedangkan apabila anda mengalami pesan error rm: cannot remove `nama_folder': Permission denied artinya anda tidak memiliki hak akses untuk menghapusnya. Mungkin anda lupa menggunakan sudo atau malah perlu user root untuk eksekusinya.

Ada beberapa cara berbeda untuk menghapus direktori di sistem Linux. Jika Anda menggunakan manajer file Desktop seperti File Gnome atau KDE's Dolphin maka Anda dapat menghapus file dan direktori menggunakan antarmuka pengguna grafis manajer. Tetapi, jika Anda bekerja pada server tanpa kepala atau ingin menghapus banyak direktori sekaligus, pilihan terbaik Anda adalah menghapus direktori [folder] dari baris perintah.

, kami akan menjelaskan cara menghapus direktori di Linux menggunakan rmdir, rm dan find perintah.

Sebelum kamu memulai

Ketika Anda menghapus direktori dengan menggunakan manajer file Desktop Anda, direktori tersebut sebenarnya dipindahkan ke Sampah dan dapat dengan mudah dipulihkan.

Berhati-hatilah saat menghapus file atau direktori dari baris perintah, karena begitu direktori dihapus menggunakan perintah yang dijelaskan itu tidak dapat sepenuhnya pulih.

Pada kebanyakan sistem file Linux, menghapus direktori memerlukan izin tulis pada direktori dan kontennya. Kalau tidak, Anda akan mendapatkan kesalahan "Operasi tidak diizinkan".

Nama direktori dengan spasi di dalamnya harus diloloskan dengan backslash [ / ].

Menghapus Direktori dengan rmdir

rmdir adalah utilitas baris perintah untuk menghapus direktori kosong. Ini berguna ketika Anda ingin menghapus direktori hanya jika itu kosong, tanpa perlu memeriksa apakah direktori tersebut kosong atau tidak.

Untuk menghapus direktori dengan rmdir, ketikkan perintah diikuti dengan nama direktori yang ingin Anda hapus. Misalnya, untuk menghapus direktori bernama dir1 Anda harus mengetik:

rmdir dir1

Jika direktori tidak kosong Anda akan mendapatkan kesalahan berikut:

rmdir: failed to remove 'dir1': No such file or directory

Dalam hal ini, Anda harus menggunakan perintah rm atau menghapus secara manual isi direktori sebelum Anda dapat menghapusnya.

Menghapus Direktori dengan rm

rm adalah utilitas baris perintah untuk menghapus file dan direktori. Tidak seperti rmdir, perintah rm dapat menghapus direktori kosong dan tidak kosong.

Secara default, ketika digunakan tanpa opsi, rm tidak menghapus direktori. Untuk menghapus direktori kosong, gunakan opsi -d [ --dir ] dan untuk menghapus direktori yang tidak kosong dan semua isinya gunakan opsi -r [ --recursive or -R ].

Misalnya untuk menghapus direktori bernama dir1 beserta semua isinya, Anda akan mengetik:

rm -r dir1

Jika direktori atau file di dalam direktori tersebut dilindungi dari penulisan, Anda akan diminta untuk mengkonfirmasi penghapusan. Untuk menghapus direktori tanpa diminta, gunakan opsi -f :

rm -rf dir1

Untuk menghapus banyak direktori sekaligus, gunakan perintah rm diikuti dengan nama-nama direktori yang dipisahkan oleh spasi. Perintah di bawah ini akan menghapus setiap direktori yang tercantum dan isinya:

rm -r dir1 dir2 dir3

Opsi -i memberi tahu rm untuk meminta Anda mengonfirmasi penghapusan setiap subdirektori dan file. Jika direktori berisi banyak file, ini bisa sedikit mengganggu sehingga Anda dapat mempertimbangkan menggunakan opsi -I yang akan meminta Anda hanya sekali sebelum melanjutkan penghapusan.

rm -rI dir1

Untuk menghapus direktori ketik y dan tekan Enter .

rm: remove 1 argument recursively? y

Anda juga dapat menggunakan ekspansi reguler untuk mencocokkan dan menghapus beberapa direktori. Misalnya, untuk menghapus semua direktori tingkat pertama di direktori saat ini yang diakhiri dengan _bak, Anda akan menggunakan perintah berikut:

rm -r *_bak

Menggunakan ekspansi reguler ketika menghapus direktori mungkin berisiko. Disarankan terlebih dahulu untuk mendaftar direktori dengan perintah ls sehingga Anda dapat melihat direktori apa yang akan dihapus sebelum menjalankan perintah rm .

Menghapus Direktori dengan find

find adalah utilitas baris perintah yang memungkinkan Anda untuk mencari file dan direktori berdasarkan ekspresi yang diberikan dan melakukan tindakan pada setiap file atau direktori yang cocok.

Skenario yang paling umum adalah dengan menggunakan perintah find untuk menghapus direktori berdasarkan suatu pola. Misalnya, untuk menghapus semua direktori yang diakhiri dengan _cache di direktori kerja saat ini Anda akan menjalankan:

find . -type d -name '*_cache' -exec rm -r {} +

Mari kita menganalisis perintah di atas:

  • /dir - pencarian secara rekursif di direktori kerja saat ini [ . ] -type d - membatasi pencarian ke direktori. -name '*_cache' - hanya mencari direktori yang diakhiri dengan _cache -exec - mengeksekusi perintah eksternal dengan argumen opsional, dalam hal ini yaitu rm -r . {} + - menambahkan file yang ditemukan ke akhir perintah rm .

Menghapus semua direktori kosong

Untuk menghapus semua direktori kosong di pohon direktori yang akan Anda gunakan:

find /dir -type d -empty -delete

Berikut ini penjelasan untuk opsi yang digunakan:

  • /dir - pencarian secara rekursif di /dir . -type d - membatasi pencarian ke direktori. -empty - membatasi pencarian hanya untuk mengosongkan direktori. -delete - menghapus semua direktori kosong yang ditemukan di subtree. -delete hanya dapat menghapus direktori kosong.

Gunakan opsi -delete dengan sangat hati-hati. Baris perintah find dievaluasi sebagai ekspresi dan jika Anda menambahkan opsi -delete terlebih dahulu, perintah akan menghapus semuanya di bawah titik awal yang Anda tentukan. Selalu gunakan -delete sebagai opsi terakhir dan sebelum menghapus, uji perintah terlebih dahulu tanpa opsi -delete .

/ bin / rm: Daftar argumen terlalu panjang

Pesan kesalahan ini muncul ketika Anda menggunakan perintah rm untuk menghapus direktori yang berisi sejumlah besar file. Ini terjadi karena jumlah file lebih besar dari batas sistem pada ukuran argumen baris perintah.

Ada beberapa solusi berbeda untuk masalah ini. Misalnya, Anda dapat melakukan cd ke direktori dan secara manual atau menggunakan loop untuk menghapus sub-direktori satu per satu.

Solusi termudah adalah pertama-tama menghapus semua file dalam direktori dengan perintah find dan kemudian hapus direktori:

find /dir -type f -delete && rm -r /dir

Kesimpulan

Dengan rm dan find Anda dapat menghapus direktori berdasarkan kriteria berbeda dengan cepat dan efisien.

Menghapus direktori adalah proses yang sederhana dan mudah tetapi Anda harus berhati-hati untuk tidak menghapus data penting.

rm rmdir cari terminal

Menghapus file pada sistem operasi apa pun biasanya semudah mengkliknya dan menekan tombol delete atau mengklik kanan dan mengirimkannya ke tempat sampah. Kita semua tahu bagaimana melakukan itu dan itu adalah opsi terbaik untuk menghapus file di depan kita. Tapi, apa yang terjadi jika yang kita inginkan, misalnya, menghapus beberapa file yang ada di dalam folder yang sama? Kebetulan di Linux kami memiliki file perintah rm yang memungkinkan kami untuk menghilangkan hampir semua hal dari terminal.

"Rm" adalah singkatan dari «hapus», yaitu «menghilangkan» dalam bahasa Inggris. Ini digunakan untuk menghapus file dan jika digunakan secara rekursif itu juga akan memungkinkan kita untuk menghapus direktori. Secara default itu tidak akan menghapus direktori dan itu akan menghapus file apa pun yang ditentukan pada baris perintah. Proses penghapusan memutuskan tautan nama file pada sistem file dari data terkait dan menandai ruang penyimpanan yang dapat digunakan untuk penulisan di masa mendatang. Anda harus berhati-hati, karena sekali Anda menghapus sesuatu dengan rm, itu tidak dapat dipulihkan lagi.

Pilihan tersedia untuk rm

-f,
-memaksa
Abaikan file yang tidak ada dan jangan pernah bertanya sebelum penghapusan.
-i Tanyakan sebelum menghapus.
-I Tanyakan sekali sebelum menghapus lebih dari tiga file atau saat menghapus secara berulang.
–Interaktif[=KAPAN] Pertanyaan menurut KAPAN: tidak pernah, sekali [-I], atau selalu [-i]. Iya KAPAN tidak ditentukan, selalu tanyakan.
-Satu-sistem-file Saat menghapus hierarki secara rekursif, ini mengabaikan direktori yang ada di direktori yang berbeda dari yang sesuai dengan argumen baris perintah.
–Tidak melestarikan-root Itu tidak memperlakukan direktori root dengan cara khusus apa pun.
–Preserve-root Itu tidak menghapus direktori root, yang merupakan perilaku default.
-r,
-R,
-Rekursif
Hapus direktori dan kontennya secara berulang.
-d,
–Dir
Hapus direktori kosong. Opsi ini memungkinkan kita untuk menghapus direktori tanpa menentukan -r / -R / –recursive.
-v,
–Verbose
Mode verbose; Jelaskan setiap saat apa yang sedang dilakukan.
-membantu Tunjukkan pesan bantuan.
-versi Menampilkan informasi versi.

Contoh praktis

rm tidak menghapus direktori secara default. Untuk ini kita harus menggunakan opsi -r / -R / –recursive. Jika direktori kosong, gunakan opsi n -d / –dir. Jika kita ingin menghapus file yang dimulai dengan tanda hubung [-], kita harus menambahkan tanda hubung ganda [-] sebelum nama file. Jika tanda hubung kedua tidak ditambahkan, rm mungkin salah menafsirkan nama file sebagai opsi. Perlu diingat bahwa tanda bintang [*] berarti "semua yang cocok", menambahkan "*." dan hanya di belakang tanda bintang.

Misalnya, untuk menghapus file «-test.txt» kita harus menggunakan perintah

rm -- -prueba.txt

Di atas akan terjadi di folder pribadi kita. Jika tidak, kita harus menambahkan path lengkap, yang akan menjadi seperti ini:

rm /home/pablinux/Documentos/-file

Perbedaan antara kedua opsi ini adalah dalam kasus kedua ada garis miring [/] di depannya, yang membuat opsi tidak membingungkan.

Contoh lainnya adalah:

  • rm -f test-txt: akan menghapus file "test.txt" tanpa bertanya meskipun file itu dilindungi.
  • rm *: itu akan menghapus semua file di direktori tempat kita berada dari terminal. Jika memiliki perlindungan tulis, itu akan bertanya kepada kami sebelum menghapusnya.
  • rm -f *: akan menghapus semua yang ada di direktori tanpa bertanya.
  • rm -i *- Akan mencoba menghapus semua file dalam direktori, tetapi meminta setiap kali untuk menghapusnya.
  • rm -I *: seperti di atas, namun hanya akan meminta konfirmasi jika ada lebih dari tiga file.
  • rm -r direktori, di mana "direktori" adalah yang spesifik: ia akan menghapus direktori "direktori" dan semua file dan subdirektori di dalamnya. Jika ada file atau subdirektori yang dilindungi dari penulisan, ia akan bertanya.
  • rm -rf direktori: sama seperti di atas, tetapi tidak akan bertanya.

Dan kami mengakhiri dengan perintah yang dapat kami lihat di jejaring sosial lebih sebagai lelucon daripada apa pun. Perintah di atas berarti 1- hapus, 2- secara rekursif sebanyak mungkin dan 3- dimulai dengan root. Karena cara Linux mengelola drive, itu juga akan menghapus konten hard drive apa pun yang telah kita sambungkan ke komputer kita. Jika Anda menggunakannya, jangan katakan bahwa kami tidak memperingatkan.

Video yang berhubungan

Bài Viết Liên Quan

Bài mới nhất

Chủ Đề