Saya perlu menghapus semua konten folder dalam CentOS tetapi tidak pada folder itu sendiri.
Misalnya: Saya memiliki folder bernama "MYFOLDER" yang berisi subfolder FOLD_1, FOLD_2, FOLD_3, FOLD_4 ... dll, dan beberapa file. Saya perlu menghapus semua folder dan file ini tetapi tidak pada folder container MYFOLDER. Saya perlu direktori ini untuk mengarahkan hasil dari proses sebelumnya.
Saya mencoba dengan rm -rf
perintah, tetapi ini juga menghapus folder penampung.
shopt -s dotglob
terlebih dahulu.rm -R /path/to/myfolder/*
adalah sintaks yang benar untuk menghindari permintaan berlebihan untuk menyetujui penghapusan setiap file dan subfolder. Catat modalnyaR
.Kamu bisa menggunakan:
Ini juga menghapus file dan folder tersembunyi. Jika Anda memiliki terlalu banyak file di direktori MYFOLDER, Anda harus menjalankannya sebagai gantinya:
sumber
meta/
direktori saya , jadi saya ingin mencoba alternatif xargs, namun saya mendapatkan pesan-pesan kesalahan ini:ls: cannot access meta/.[^.]: No such file or directory ls: cannot access meta/.??*: No such file or directory rm: missing operand
bash
shell. Shell harus mendukung "Ekspansi Brace" dan "Ekspresi Reguler" untuk pola file.Cara termudah, menurut saya, adalah menghapus seluruh direktori, termasuk dirinya sendiri, dan kemudian membuat ulang folder. Ada situasi ketika ini bukan solusi yang baik (skrip tanpa pengawasan atau saluran pipa yang lebih rumit), tetapi Anda tidak menentukan mengapa Anda tidak ingin menghapus folder.
Ups. Anda memang menentukan (saya membaca ulang posting Anda). Yah, tetap saja, menghapus dan menciptakan kembali bisa berhasil. Terutama jika Anda rantai perintah bersama, seperti
Atau
sumber
Bagaimana tentang
Ini juga menghapus file yang tersembunyi (yang dimulai dengan titik).
sumber
Cobalah
rm -r -f filename
bekerja dengan CentOS 6.xsumber
Saya sangat merekomendasikan alternatif ini (ini juga menghapus file dengan spasi dalam nama):
sumber