Cara Menghapus File dan Folder di VPS

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 .bak yang sudah tidak diperlukan.
  • 🚫 Hindari langsung rm -rf kecuali kita benar-benar yakin.

Dengan cara itu, project tetap rapi, tetapi kita selalu punya “jaring pengaman” jika ada kesalahan saat refactor.