Ya, bila Anda pengguna Linux mungkin ini sedikit berguna untuk catatan. Termasuk saya.
Proses mv, cp atau ls kemungkinan besar akan stuck kalau jumlah file/folder yang diproses teramat banyak. Katakanlah 6.022.919 file. Wooow!
Contoh, bila kita akan memindahkan file dengan jumlah sebanyak itu ke folder lain maka akan keluar error seperti ini:
bash: /bin/mv: Argument list too longUntuk mengatasi hal tersebut bisa dengan menggunakan xargs atau find. Misal isi dari direktori utama akan dipindah ke direktori tujuan maka bisa dengan menggunakan perintah di bawah:
ls -1 utama | xargs -i mv utama/{} tujuan/Kalau hanya ingin memindahkan file dengan extension tertentu saja (misal .txt) bisa dengan perintah:
find utama/ -name "*.txt" -exec mv {} tujuan\;atau
find utama/ -name "*.txt" | xargs -i mv {} tujuan/Bagaimana kalau proses hapus/rm dengan jumlah file yang sebanyak itu? Caranya tetap sama, hanya command-nya saja yang beda. Yaitu:
ls -1 utama | xargs -i rm utama/{}atau bila hanya extension tertentu (misal: .txt)
find utama/ -name "*.txt" -exec rm {} \;atau juga
find utama/ -name "*.txt" | xargs -i rm {}
kenapa yang ini = “(ls -1 utama | xargs -i mv utama/{} tujuan/)” gak bisa di terapkan ya..? yang terjadi tetep argument list too long..ketika ane tambahin -rvf malah jadi foldernya/directorinya yang ke kopi bukan filenya..mohon pencerahannya..
trims :thumbup
alvaedison(Quote) (Reply)