Kalau saya mengerjakan project besar di Linux, tree adalah “Google Maps”-nya project. Hampir setiap hari saya pakai.
1. Menghapus satu file
Misalnya:
/opt/mailcollector/test.php
Hapus:
rm /opt/mailcollector/test.php
atau
cd /opt/mailcollector
rm test.php
2. Menghapus beberapa file
Misalnya
a.php
b.php
c.php
cukup
rm a.php b.php c.php
3. Menghapus folder kosong
Misalnya
backup/
gunakan
rmdir backup
Tetapi hanya bisa kalau folder kosong.
4. Menghapus folder beserta seluruh isinya
Misalnya
storage/
gunakan
rm -r storage
atau
rm -rf storage
Artinya
-r= recursive-f= force (tidak bertanya lagi)
5. Menghapus banyak file sekaligus
Misalnya semua file backup
router.php.bak
dashboard.php.bak
email.php.bak
cukup
rm *.bak
Misalnya
semua file log
rm *.log
6. Menghapus satu folder tertentu
Misalnya
public/assets/js/old
rm -rf public/assets/js/old
7. Menghapus hanya isi folder
Misalnya
storage/attachments/
tetapi foldernya tetap ada
rm -rf storage/attachments/*
8. Menghapus semua file php
Misalnya
rm *.php
⚠ Jangan dijalankan sembarangan.
9. Selalu cek dulu
Misalnya
tree -L 2
hasil
assets
├── css
├── js
│ ├── dashboard.js
│ ├── dashboard.bulk.js
│ └── old.js
baru
rm assets/js/old.js
10. Sangat saya rekomendasikan
Sebelum menghapus folder besar
lihat dulu isinya
tree nama-folder
misalnya
tree public/assets/js
baru hapus.
Yang paling aman
Kalau saya bekerja di server production, saya jarang langsung memakai rm -rf.
Saya biasanya:
mv folder folder_old
Misalnya
mv assets/js assets/js_old
atau
mv dashboard.js dashboard.js.old
Kalau ternyata ada error, tinggal balikin:
mv dashboard.js.old dashboard.js
Tidak perlu restore dari backup.
Untuk proyek MailCollector kita
Saya ingin menerapkan aturan sederhana:
- 📁 Sebelum mengubah file besar → buat
.bak(seperti yang sudah kita lakukan). - 🧹 Setelah fitur benar-benar stabil → hapus file
.bakyang sudah tidak diperlukan. - 🚫 Hindari langsung
rm -rfkecuali kita benar-benar yakin.
Dengan cara itu, project tetap rapi, tetapi kita selalu punya “jaring pengaman” jika ada kesalahan saat refactor.