Baru-baru ini saya berlari rm -rf
, tidak rm -rf /
, tetapi tidak ada yang terjadi. Saya hanya mendapatkan hasil seperti ini:
Saya takut karena saya khawatir itu bisa menghapus beberapa file, tetapi tidak. Pastikan saja, dapatkah ini menghapus file dari direktori saya?
rm
), tetapi untuk banyak / sebagian besar perintah lainnya, misalnya semua perintah manipulasi teks berbasis pipa, hanya sering mencoba itu adalah yang termudah / paling sederhana yang dapat Anda lakukan. Bersama dengan mempelajari halaman manual, jelas.Jawaban:
Tidak,
rm -rf
tidak akan menghapus file apa pun karena Anda tidak memberikan argumen pada perintah.sumber
-f
, itu bukan kesalahan untuk menjalankannya tanpa argumen.rm -r
akan mengeluh tentang "operan yang hilang", tetapi-f
menekan itu, dan juga menekan kesalahan untuk file yang tidak ada. (Jadi misalnya skrip dapat digunakanrm -rf /foo/bar/*
untuk mengosongkan direktori yang mungkin sudah kosong, tanpa harus2>/dev/null
menghapus kesalahan.)Dari halaman manual :
Ini berarti Anda dapat menggunakannya untuk menghapus daftar file sekaligus, misalnya dengan
Untungnya, yang Anda lakukan hanyalah memberikan daftar file kosong , sehingga tidak menghapus apa pun. Juga, apa yang dikatakan @SolarMike : jika Anda tidak tahu apa yang dilakukan perintah, jangan jalankan . macOS dirancang untuk 'menyembunyikan' semua operasi Unix yang berbahaya (tetapi berpotensi kuat) dari pengguna akhir.
sumber
-r
flag tidak diperlukan kecuali Anda menghapus direktori secara rekursif. Jika itu hanya file,rm
sudah cukup --f
untuk memaksa jangan meminta Anda "apakah Anda yakin" untuk setiap file.rm -rf
. Jika mereka menjalankan 'rm -r' tanpa file / direktori yang ditentukan, mereka akan mendapatkan pesan penggunaan ini:JanNash ~ $ usage: rm [-f | -i] [-dPRrvW] file ... unlink file
/
, itu hanya akan melewatkan file tidak adaxyz*
(yang tidak akan berkembang karena kurangnya kecocokan).a
danb
bagi saya - bahkan tanpa menentukan-f
. Lakukan perintah yang sama denganecho rm -f a b c*
sebaliknya untuk melihat perilaku yang sebenarnya.Untuk pemula, awam / Linux / Unix:
rm
sendiri tidak melakukan apa-apa karena Anda belum mengatakan apa yang harus disingkirkan.man rm
dapat menjelaskan sebagian besar dari ini, jika Anda memahaminya.-r
berarti rekursif, seperti pada "sertakan semuanya dalam subfolder"-f
berarti mode paksa, "jangan tanya saya untuk mengonfirmasi"rm -rf
(JANGAN LAKUKAN INI)/
akan mengatakan hapus semua yang ada di bawah/
(folder root) tanpa memeriksa (pada versi macOS terbaru SIP akan mencegah Anda menghapus macOS sendiri dengan ini, tetapi banyak hal lain akan terhapus)rm [some file name]
hanya akan menghapus file itu.rm -rf /home/myuser/books
akan menghapus segala sesuatu dalammyuser
'sbooks
folder, serta folder.sumber
rm -rf / --no-preserve-root
untuk menembak kaki Anda dengan benar.find / -delete
harus "bekerja" (yaitu benar-benar menghapus sesuatu, jadi jangan jalankan itu.)Tidak, tetapi jika Anda ingin menghapus, Berikut ini contohnya:
Setelah Anda meluncurkan Terminal (di folder / Aplikasi / Utilitas Anda) ketik cd ~ / Desktop untuk menavigasi ke direktori Desktop. Jika Anda memiliki file di sini bernama MyFile.rtf yang Anda tidak pernah ingin melihatnya lagi, Anda dapat menjalankan perintah ini:
Ketika Anda menekan Return, file akan menjadi sia-sia! Ini akan hilang, bersulang, sejarah. Anda tidak bisa mendapatkannya kembali.
sumber