Saya memiliki direktori sistem file ubuntu di direktori root dan saya tidak sengaja menyalin ratusan file ke direktori root.
Saya secara intuitif mencoba menghapus file yang disalin dengan mengecualikan sistem file seperti
rm -rf !{bin,sbin,usr,opt,lib,var,etc,srv,libx32,lib64,run,boot,proc,sys,dev} ./.
tapi itu tidak berhasil. Apa cara yang tepat untuk mengecualikan beberapa direktori saat menghapus keseluruhan?
EDIT:Jangan pernah mencoba perintah apa pun di sini tanpa mengetahui apa yang harus dilakukan!
Jawaban yang Diterima:
Karena Anda menggunakan bash
:
shopt -s extglob
echo rm -rf ./!(bin|sbin|usr|...)
Saya sarankan untuk menambahkan echo
di awal baris perintah ketika Anda menjalankan sesuatu yang berpotensi dapat meledakkan seluruh sistem. Hapus jika Anda puas dengan hasilnya.
Catatan:Perintah di atas tidak akan menghapus file tersembunyi (yang namanya dimulai dengan titik). Jika Anda ingin menghapusnya juga, aktifkan juga dotglob
pilihan:
shopt -s dotglob