Perintah Linux rm: Semua yang Perlu Anda Ketahui

Diterbitkan: 2023-01-22
Laptop Linux menampilkan prompt bash
fatmawati achmad zaenuri/Shutterstock.com
Perintah rm memungkinkan Anda menghapus file atau direktori yang melewati namanya: "rm filename" atau "rm -d directory." Anda juga dapat menyertakan jalur direktori. Jika ada file dalam direktori, gunakan opsi -r "rm -r directory" untuk menghapus file dan folder secara rekursif.

Perintah Linux rm menghapus file dan direktori. Untuk menggunakan alat ini dengan aman, Anda perlu memastikan apa yang akan terjadi saat Anda menekan "Enter". Inilah yang perlu Anda ketahui.

Daftar isi

Apa Perintah rm di Linux?
Cara Menghapus File Dengan rm
Menggunakan Wildcard Dengan rm
Menggunakan rm Secara Interaktif
Menggunakan Opsi Paksa rm
Menghapus Direktori Dengan rm
Menghindari Kesalahan Saat Menggunakan rm
APD apa?

Apa Perintah rm di Linux?

Perintah rm Linux terutama untuk menghapus file. Itu salah satu yang ditemui kebanyakan orang segera setelah mereka mulai menggunakan Linux. Hanya karena menjadi pendatang baru di Linux, Anda cenderung membuat kesalahan. Anda akan membuat atau menyalin file secara tidak sengaja, atau dengan nama yang salah, atau ke tempat yang salah. Itu semua adalah bagian dari kurva pembelajaran dari baris perintah. Operasi pembersihan untuk kesalahan semacam itu melibatkan rm .

8 Typos yang Harus Anda Hindari di Linux
TERKAIT 8 Kesalahan ketik yang Harus Anda Hindari di Linux

Perintah rm dapat menghapus file, grup file, direktori, atau pohon direktori lengkap. Itu sebabnya harus digunakan dengan hati-hati. Menggunakan rm tidak sulit, tetapi hukuman kegagalannya tinggi.

Ketika sebuah file dihapus dengan rm , itu hilang. Itu tidak dipindahkan ke tempat sampah. Itu segera dilenyapkan. Itu tidak berarti Anda harus menghindari penggunaan rm . Tetapi untuk menggunakannya dengan aman, Anda perlu mengetahui apa yang dapat dilakukannya, dan memastikan Anda menggunakannya dengan benar.

Beberapa alat lebih berbahaya daripada yang lain, dan jauh lebih tidak memaafkan kesalahan. Itu sebabnya tidak pernah ada film berjudul The Texas Wrench Massacre . rm bukan kunci pas, itu pasti gergaji mesin.

Orang-orang menggunakan gergaji mesin sepanjang hari setiap hari, dan selama mereka menggunakannya secara bertanggung jawab dan hati-hati, mereka baik-baik saja. Itu kesepakatan yang sama dengan rm . Ketika Anda mengeluarkan rm dari tas alat Anda, Anda harus memperlambat dan memeriksa, lalu memeriksa ulang, baris perintah Anda.

Perintah rm dapat dieksekusi, itu bukan bagian dari shell. Jadi, meskipun kita menggunakan Bash di sini, itu adalah standar Linux rm , bukan Bash rm khusus.

TERKAIT: Baris Perintah: Mengapa Orang Masih Mengganggu Mereka?

Cara Menghapus File Dengan rm

Cara paling sederhana untuk menggunakan rm adalah dengan memberikan nama file yang ingin Anda hapus.

 rm config.gc 

Menghapus satu file dengan meneruskan nama filenya ke rm

Anda diam-diam kembali ke baris perintah. rm mengadopsi sikap Linux klasik yang tertutup bahwa jika tidak mengeluh tentang apa pun, Anda dapat menganggap itu melakukan apa yang Anda minta. Memberikan nama file seperti ini menyebabkan rm mencari file di direktori kerja saat ini.

Anda dapat memberikan beberapa nama file pada baris perintah. Anda juga dapat memberikan jalur direktori jika file yang ingin Anda hapus tidak ada di direktori saat ini.

 rm memlog.sh /home/dave/dev-archive/config.gc 

Menghapus dua file dengan meneruskan nama file dan jalur direktori ke rm

Sekali lagi, tidak ada yang dilaporkan jika rm berhasil menghapus file yang ditentukan.

TERKAIT: 37 Perintah Linux Penting yang Harus Anda Ketahui

Menggunakan Wildcard Dengan rm

Wildcard memungkinkan Anda menentukan grup atau kumpulan file tanpa harus mencantumkan file individual di baris perintah.

Tanda bintang “ * ” mewakili urutan karakter apa pun, termasuk tidak ada. Tanda tanya “ ? ” mewakili karakter tunggal apa pun.

Untuk memeriksa apakah wildcard Anda akan cocok dengan yang Anda harapkan, dan tidak lebih, Anda dapat menggunakannya dengan ls sebelum Anda menggunakannya dengan rm.

Untuk menghapus semua file PNG di direktori saat ini, gunakan "*.png." Ini berarti urutan karakter apa pun yang diikuti dengan ".png" akan dicocokkan. Ketika file telah dihapus, kita dapat menggunakan ls untuk memverifikasi bahwa file tersebut telah hilang.

 ls *.png
 rm *.png
 ls *.png 

Menggunakan wildcard asterisk untuk menghapus semua file dengan ekstensi file PNG

Di komputer uji kami, kami memiliki dua file di direktori saat ini dengan nama yang dimulai dengan "config."

Kami dapat menghapus keduanya dengan menggunakan wildcard asterisk. Itu cocok dengan kedua file karena rm mencari nama file yang dimulai dengan "config", diikuti dengan urutan karakter apa pun. Pada satu file, urutan karakter tersebut adalah ".sl3", ekstensi nama file. Nama file lain tidak memiliki karakter setelah "config", tetapi karena asterisk cocok dengan karakter apa pun atau tanpa karakter , nama file juga cocok dengan itu.

 konfigurasi*
 konfigurasi rm*
 konfigurasi* 

Menggunakan wildcard asterisk untuk menghapus dua file, satu dengan dan satu tanpa, ekstensi file

Anda dapat menggunakan tanda tanya berpasangan. Ini akan menghapus file yang memiliki ekstensi file dua karakter persis.

 ls *.??
 rm*.??
 ls *.?? 

Menggunakan dua wildcard tanda tanya untuk menghapus file yang memiliki ekstensi file tepat dua karakter

TERKAIT: 15 Karakter Khusus yang Perlu Anda Ketahui untuk Bash

Menggunakan rm Secara Interaktif

Cara aman untuk menggunakan rm adalah dengan memaksanya meminta konfirmasi sebelum menghapus setiap file. Opsi -i (interaktif) memungkinkan Anda melakukan ini. Saat Anda menambahkan opsi ini ke baris perintah, rm akan meminta Anda sebelum setiap penghapusan, memberi Anda kesempatan untuk melangkahi tindakan yang tidak Anda inginkan.

Kami akan menggunakan opsi -i (interaktif) dalam perintah ini. Itu mencoba untuk menghapus semua file dengan ekstensi file karakter tunggal.

 rm -i *.? 

Menggunakan rm secara interaktif sehingga diminta sebelum setiap penghapusan

Setiap file yang cocok disajikan secara bergantian. Jika Anda menjawab "y" atau "Y" file akan dihapus. Jika Anda menjawab "n", file tersebut dipertahankan. Faktanya, jika Anda menjawab dengan apa pun selain "y" atau "y", file tersebut akan dipertahankan. Anda cukup menekan "Enter" dan file tersebut dipertahankan.

Anda dapat dengan cepat mengerjakan daftar file Anda, menghapus atau melompati file untuk memilih file yang ingin Anda hapus. Seperti yang akan kita lihat, Anda dapat menggunakan opsi i- (interaktif) dengan opsi rm lainnya.

TERKAIT: Laptop Linux Terbaik untuk Pengembang dan Penggemar

Menggunakan Opsi Paksa rm

Jika Anda mencoba untuk menghapus file yang hanya-baca, rm meminta Anda untuk konfirmasi sebelum menghapus file. Itu jaring pengaman yang bagus, tetapi bisa menjadi membosankan jika Anda memiliki banyak file untuk dihapus.

 rm geonames.sl3 

rm meminta pengguna untuk mengonfirmasi bahwa mereka ingin menghapus file hanya-baca

Opsi -f (force) menginstruksikan rm untuk tidak pernah meminta. Anda mengatakannya, "Ya, hapus semua file yang biasanya Anda tanyakan kepada saya." Itu juga mencegah rm mengeluh tentang file yang tidak ada.

 rm -f geonames.sl3 

Menggunakan opsi -f (paksa) untuk mencegah rm meminta penghapusan

Opsi -f (paksa) sering digunakan saat Anda menghapus kumpulan file dan direktori bersarang.

Menghapus Direktori Dengan rm

Perintah rm juga dapat menghapus direktori, bersama dengan file yang dikandungnya. Ini mirip dengan perintah rmdir , tetapi rmdir tidak dapat menghapus direktori dengan file di dalamnya. Itu hanya menghapus direktori kosong. Perintah rm dapat dengan mudah menghapus direktori yang berisi file dan direktori lainnya.

Cara Menghapus File dan Direktori di Terminal Linux
TERKAIT Cara Menghapus File dan Direktori di Terminal Linux

Menghapus direktori mirip dengan menghapus file. Kami memberikan nama direktori pada baris perintah. Kita perlu menyertakan opsi -d (direktori). Seperti yang kami lakukan saat menghapus file, kami dapat memberikan nama beberapa direktori. Kami dapat menyediakan jalur ke direktori yang tidak ada di direktori kerja saat ini.

 rm -d proyek lama 

Menggunakan opsi -d (direktori) untuk menghapus direktori

Jika direktori berisi file, ini akan gagal.

Untuk menghapus direktori dan isinya, gunakan flag -r (recursive). Ini menghapus direktori, file-nya, dan setiap direktori bersarang yang dikandungnya.

 rm -d arsip
 rm -r arsip 

Menggunakan opsi -r (rekursif) untuk menghapus direktori dan file-filenya

Perintah kedua berhasil.

Untuk mengubah rm ke mode full-on chainsaw, kita dapat menggabungkan opsi -r (recursive) dan -f (force). Ini memberitahu rm untuk secara rekursif menghapus semua file dan direktori di pohon direktori, bahkan jika itu hanya-baca, dan tanpa pernah meminta kita.

Di komputer uji kami, kami memiliki direktori bernama "kode yang dimigrasikan". Ini berisi file dan direktori lain yang disebut "6502." Direktori "6502" juga berisi file dan direktori lain bernama "ASM". Ada file di direktori itu juga. Beberapa file bersifat hanya-baca.

Kami juga akan menyertakan perintah -v (verbose) sehingga rm memberi tahu kami apa yang sedang dilakukannya.

 rm -rfv kode bermigrasi 

Menggunakan flag -rfv menyebabkan rm menghapus file dan direktori, bahkan file read-only, tanpa diminta

Dalam output kita dapat melihat bahwa file dihapus dan, ketika kosong, direktori juga dihapus.

Output dari flag -rfv menunjukkan file yang dihapus dan direktori yang dihapus setelah kosong

Menghindari Kesalahan Saat Menggunakan rm

Spasi dan karakter aneh lainnya dalam nama file dapat menimbulkan masalah. Nama file yang dimulai dengan tanda hubung “ - ” misalnya, dapat disalahartikan sebagai opsi baris perintah. Jika kami memiliki file bernama "-contributors.txt", rm akan mencoba memproses nama sebagai urutan opsi baris perintah.

Karena rm tidak memiliki opsi yang disebut " -c ", penguraian baris perintah gagal dan file tidak dihapus. Untuk menghapus file, Anda harus mengawalinya dengan "./" untuk memberikan path ke sana.

 rm -kontributor.txt
 rm ./-contributors.txt 

Menggunakan "./" untuk mengatasi masalah menghapus file yang karakter pertamanya adalah tanda hubung

Spasi pada nama file juga bermasalah. Kutip seluruh nama file, atau gunakan pelengkapan tab untuk memasukkan nama file ke baris perintah untuk Anda, keluar dari spasi saat melakukannya. Jika Anda tidak menggunakan salah satu opsi ini, rm akan memperlakukan setiap bagian dari nama file sebagai file individual.

Cara Menangani Spasi di Nama File di Linux
TERKAIT Cara Menangani Spasi di Nama File di Linux

Di sini, kami memiliki dua file, satu disebut "cadangan" dan satu lagi disebut "cadangan untuk dihapus". Kami dapat mendemonstrasikan masalah dengan nama file ini, menggunakan ls . Jika kami mencoba menggunakan ls pada file "cadangan untuk menghapus" dan kami tidak melarikan diri atau mengutip nama file, perintah gagal.

 ls -hl cadangan untuk dihapus 

Mencoba menggunakan ls pada file dengan spasi di namanya, tanpa mengutip string atau keluar dari spasi

ls mengeluh bahwa ia tidak dapat menemukan file bernama "to" atau "delete", tetapi ia menemukan file bernama "backup". Itulah yang akan dilakukan rm juga. Itu akan mengeluh tentang dua file yang hilang, dan kemudian akan menghapus file yang disebut "cadangan", yang bukan itu yang kita inginkan.

 rm cadangan untuk dihapus 

Mencoba menggunakan rm pada file dengan spasi di namanya, tanpa mengutip string atau keluar dari spasi

rm mengira ini berfungsi dengan tiga file, "cadangan", "ke", dan "hapus". Ia mengeluh bahwa ia tidak dapat menemukan "to" dan "delete", tetapi ia menemukan dan menghapus "backup" secara diam-diam.

Mengutip nama file memungkinkan rm untuk menghapus file yang benar.

 rm 'cadangan untuk dihapus' 

Menggunakan rm dengan nama file yang dikutip untuk mengatasi masalah spasi pada nama file

Anda juga dapat keluar dari spasi dengan garis miring terbalik “ \ “, seperti ini:

 rm backup\ untuk\ hapus 

Menggunakan rm dengan nama file dengan spasi yang lolos untuk mengatasi masalah spasi di nama file

Jika Anda menggunakan pelengkapan tab untuk memasukkan nama file, nama tersebut akan otomatis di-escape, jika diperlukan.

APD apa?

Tidak seperti gergaji dunia nyata, tidak ada alat pelindung diri yang dapat Anda gunakan rm .

Apa yang dapat Anda lakukan, adalah memeriksa sintaks Anda ls sebelum Anda mencobanya rm , dan gunakan mode interaktif sehingga Anda dapat memutuskan apa yang akan dihapus.

Selain itu, berlatihlah sampai Anda merasa nyaman dan percaya diri. Cara teraman untuk melakukannya adalah dengan menyalin banyak file pengorbanan ke direktori dan mempraktikkannya.

TERKAIT: Hapus File Lebih Lama Dari x Hari di Linux