wget merupakan salah satu command di linux yang digunakan untuk download file. Untuk penggunakannya, kita bisa menggunakan perintah :
wget https://tixoez.my.id/file.zip
Tetapi penggunaan perintah itu, kita hanya bisa mendownload 1 buah file saja.
Agar kita bisa download beberapa file sekaligus, kita bisa membuat script shell, yang nantinya, saat download beberapa file kita hanya menjalankan 1 buah perintah saja.
Berikut beberapa langkah untuk membuat scriptnya :
- buat script shell
#!/bin/bash
while read file; do
wget ${file}
done < files.txt - setelah itu kita buat list link download dan kita kasih nama files.txt
https://tixoez.my.id/file1.zip
https://tixoez.my.id/file2.zip
https://tixoez.my.id/file3.zip - jalankan script shell tersebut
Tetapi permasalahan dengan script tersebut, meskipun kita hanya menjalankan 1 perintah saja, tetapi proses downloadnya akan tetap berjalan satu-satu (antri dari list paling atas, setelah selesai baru download di list dibawahnya)
Agar kita bisa download secara bersamaan kita bisa merubah script tersebut menjadi :
#!/bin/bash
while read file; do
wget ${file} &
done < files.txt
perintah wget akan bercalan di background, tetapi kita tidak bisa memonitornya.
Agar dapat di monitor, kita bisa mengganti parameter & menjadi -b
#!/bin/bash
while read file; do
wget ${file} -b
done < files.txt
dengan script diatas, akan muncul file baru di folder dengan nama wget-log sejumlah link yang kita masukkan di file daftar link.
untuk memonitor proses download kita bisa cek di file tersebut
tail -f wget-log
maka akan muncul berapa persen download berjalan.
4142550K ………. ………. ………. ………. ………. 99% 2.53M 0s
4142600K ………. ………. ………. ………. ………. 99% 2.67M 0s
4142650K ………. ………. ………. ………. ………. 99% 2.57M 0s
4142700K ………. ………. ………. ………. ………. 99% 3.10M 0s
4142750K ………. ………. ………. ………. ………. 99% 2.67M 0s
4142800K ………. ………. ………. ………. ………. 99% 2.42M 0s
4142850K ………. ………. …….. 100% 2.14M=72m4s
2021-10-16 16:17:16 (958 KB/s) – ‘file1.zip’ saved [4242307072/4242307072]