Gagal hapus, copy atau lihat isi directory dengan error: Argument list too long
Ya, bila Anda pengguna Linux mungkin ini sedikit berguna untuk catatan. Apalagi gw yang masih belum paham bener Linux ![]()
Proses mv, cp atau ls kemungkinan besar akan stuck kalau jumlah file/folder yang diproses teramat banyak. Katakanlah 6.022.919 file. Wew!!!
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 long
Untuk 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 ini:
ls -1 utama | xargs -i mv utama/{} tujuan/
Kalau misal 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 seabrek 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 {}
Terimakasih telah mengunjungi Blog ini. Semoga dapat bermanfaat untuk saya khususnya dan untuk para pengunjung blog ini umumnya
