Katakanlah Anda memiliki 100+ file dalam satu folder. Anda ingin menghapus semuanya kecuali satu atau beberapa file tertentu. Bagaimana Anda melakukannya? Anda dapat menyalin file yang ingin Anda simpan, dan menyimpannya di lokasi berbeda, lalu menghapus sisa file atau seluruh folder. Tapi tunggu, saya tahu cara termudah untuk melakukan ini. Anda dapat menghapus semua file dalam file lama kecuali satu file tertentu atau jenis file tertentu sekaligus dengan satu perintah baris. Ingin tahu caranya? Baca terus.
Hapus Semua File Dalam Folder Kecuali Satu File Tertentu
Mari kita gambarkan contoh berikut. Kami memiliki folder bernama 'test' yang berisi 10 file teks.
$ ls test/
Contoh keluaran:
file10.txt file2.txt file4.txt file6.txt file8.txt file1.txt file3.txt file5.txt file7.txt file9.txt
Sekarang, saya ingin menghapus semua yang ada di folder ini kecuali file10.txt .
Mungkin ada banyak perintah untuk melakukan ini. Tapi ini adalah lima perintah yang saya ketahui.
Pertama, pergi ke pengujian map:
$ cd test/
Dan jalankan perintah berikut:
$ rm -f !(file10.txt)
Atau, cukup gunakan:
$ rm !(file10.txt)
Perintah di atas akan menghapus semua file di folder pengujian kecuali file10.txt berkas.
Anda juga dapat menggunakan menemukan perintah untuk menghapus semuanya kecuali yang spesifik. Perintah berikut akan menghapus semua file di folder saat ini (yaitu tes dalam kasus kami) kecuali file10.txt.
$ find . ! -name file10.txt -delete
Seperti yang Anda lihat pada contoh di atas, folder pengujian berisi jenis file yang sama yaitu file .txt. Apa yang akan Anda lakukan jika folder tersebut memiliki jenis file yang berbeda seperti .mp3, .doc, .pdf dll? Juga mudah untuk menyimpan jenis file tertentu dalam folder dan menghapus yang lainnya.
Katakanlah folder pengujian kami berisi tiga file .txt, tiga file .mp3, tiga file .doc, dan satu file .pdf.
$ ls test/
Contoh keluaran:
total 0 -rw-r--r-- 1 sk users 0 Mar 22 15:51 file10.pdf -rw-r--r-- 1 sk users 0 Mar 22 15:51 file1.txt -rw-r--r-- 1 sk users 0 Mar 22 15:51 file2.txt -rw-r--r-- 1 sk users 0 Mar 22 15:51 file3.txt -rw-r--r-- 1 sk users 0 Mar 22 15:51 file4.mp3 -rw-r--r-- 1 sk users 0 Mar 22 15:51 file5.mp3 -rw-r--r-- 1 sk users 0 Mar 22 15:51 file6.mp3 -rw-r--r-- 1 sk users 0 Mar 22 15:51 file7.doc -rw-r--r-- 1 sk users 0 Mar 22 15:51 file8.doc -rw-r--r-- 1 sk users 0 Mar 22 15:51 file9.doc
Seperti Anda pada output di atas, saya memiliki empat jenis file yang berbeda (pdf, txt, mp3, doc) di folder pengujian. Saya ingin menyimpan file yang memiliki .doc ekstensi dan hapus yang lainnya. Inilah cara saya melakukannya:
$ cd test/
$ rm !(*.doc)
Sekarang, mari kita daftar isi file menggunakan perintah:
$ ls
Contoh keluaran:
file7.doc file8.doc file9.doc
Perintah di atas menghapus semua yang ada di folder kecuali file yang berekstensi .doc .
Demikian pula, Anda dapat menyimpan dua atau lebih jenis file tertentu dan menghapus yang lainnya. Misalnya, perintah berikut akan menyimpan file yang berisi .doc dan .mp3 ekstensi.
$ rm !(*.doc|*.mp3)
Sekarang, Anda akan melihat file mp3 dan doc tidak terhapus.
$ ls
Contoh keluaran:
file4.mp3 file5.mp3 file6.mp3 file7.doc file8.doc file9.docUnduh - Panduan Gratis:"GNU/Linux Basic"
Ini hanya sepuluh jenis file yang berbeda. Hanya gambar Anda memiliki ratusan file. Akan lebih sulit untuk menemukan setiap jenis file dan menghapusnya secara manual. Trik ini akan berhasil hanya dalam satu atau dua detik.
Harap berhati-hati saat menggunakan perintah ini. Periksa kembali jalur direktori sebelum menghapus file untuk menghindari penghapusan file penting yang tidak disengaja.
Bacaan yang disarankan:
- Mencegah File dan Folder Dari Penghapusan atau Modifikasi yang Tidak Disengaja di Linux
- Cara Mudah untuk Melindungi File Dari Penghapusan yang Tidak Disengaja di Linux
Semoga ini membantu. Jika Anda merasa panduan ini bermanfaat, silakan bagikan di jejaring sosial, profesional, dan dukung kami.
Lebih banyak barang bagus akan datang. Tetap disini!
Semangat!