Dari jendela terminal:
Ketika saya menggunakan rm
perintah itu hanya dapat menghapus file.
Ketika saya menggunakan rmdir
perintah itu hanya menghapus folder kosong.
Jika saya memiliki direktori yang bersarang dengan file dan folder di dalam folder dengan file dan sebagainya, apakah ada cara untuk menghapus semua file dan folder tanpa semua mengetik perintah yang berat?
Jika ada bedanya, saya menggunakan mac bash shell dari terminal, bukan Microsoft DOS atau linux.
Jawaban:
-r "rekursif" -f "force" (menekan pesan konfirmasi)
Hati-hati!
sumber
brew install trash
makatrash -rf some_dir
ini akan memindahkan direktori yang tidak diinginkan ke trashbin Anda alih-alih hanya menghilangkan gaya- Prestise ke eter. ( sumber )Akan menghapus semuanya (folder & file) di direktori saat ini.
Tetapi berhati-hatilah! Hanya jalankan perintah ini jika Anda benar-benar yakin, bahwa Anda berada di direktori yang benar.
sumber
ls -R *
dulu untuk melihat apa yang akan dihapus olehrm -rf *
Ya ada. The
-r
pilihan memberitahurm
menjadi r ecursive, dan menghapus seluruh hirarki file berakar pada argumen; dengan kata lain, jika diberi direktori, itu akan menghapus semua isinya dan kemudian melakukan apa yang secara efektifrmdir
.Dua opsi lain yang harus Anda ketahui adalah
-i
dan-f
.-i
singkatan dari i nteractive; iturm
meminta Anda sebelum menghapus setiap file.-f
singkatan f orce; itu berjalan di depan dan menghapus semuanya tanpa bertanya.-i
lebih aman, tetapi-f
lebih cepat; gunakan saja jika Anda benar - benar yakin telah menghapus hal yang benar. Anda dapat menentukan ini dengan-r
atau tidak; ini merupakan pengaturan independen.Dan seperti biasa, Anda dapat menggabungkan switch:
rm -r -i
is justrm -ri
, andrm -r -f
isrm -rf
.Perhatikan juga bahwa apa yang Anda pelajari berlaku
bash
pada setiap OS Unix: OS X, Linux, FreeBSD, dll. Faktanya,rm
sintaksisnya sama dalam hampir semua shell pada setiap OS Unix. OS X, di bawah tenda, sebenarnya adalah sistem BSD Unix.sumber
"rm -d"
, yang menghapus file atau direktori kosong. Namun, +1 untuk poin bahwa OS X adalah BSD secara internal.Jadi saya mencari-cari cara untuk menghapus semua file dalam direktori kecuali untuk beberapa direktori, dan file, saya ingin menyimpannya. Setelah banyak pencarian saya menemukan cara untuk melakukannya menggunakan find.
Pada dasarnya ia menggunakan regex untuk memilih direktori untuk dikecualikan dari hasil kemudian menghapus file yang tersisa. Hanya ingin meletakkannya di sini kalau-kalau ada orang lain yang membutuhkannya.
sumber