Ulangi serangkaian angka untuk diunduh dengan wget

11

Bagaimana saya bisa menulis skrip bash yang akan melakukan hal berikut:

URL = "example.com/imageID="
while (1..100)
   wget URL + $i #it will wget example.com/imageID=1, then 2, then 3, etc
done

Jadi saya memiliki beberapa loop untuk dilakukan, URL yang diakhiri dengan angka dari loop. Saya perlu wgetsemua ini.

Szymon Toda
sumber

Jawaban:

19

jika Anda menggunakan Bash 4.0, Anda dapat melakukan ini:

wget example.com/imageId={1..100}.jpg
CC
sumber
10

Ini cukup mudah, bahkan untuk seseorang yang tidak memiliki banyak pengalaman pemrograman. Jika ragu selalu baca manual Bash :

for i in {1..100}
do
    wget "example.com/imageID=$i"
done
Canha
sumber
Sebagai prinsip, Anda harus menyertakan $itanda kutip di:wget "example.com/imageID=$i"
Scott
ini mungkin bekerja dengan baik. Namun, saya mulai dari "00008000" dan wget menembak kesalahan karena untuk beberapa alasan itu melompati empat nol pertama.
esaruoho
-1

Dalam hal variabel tidak di akhir URL dan variabel ada di antara garis bawah:
example.com/imageID_1_2018.gif
example.com/imageID_2_2018.gif
example.com/imageID_3_2018.gif
.
.
.
example.com/imageID_100_2018.gif

wget example.com/imageID_{1..100}_2018.gif
setara:
for ((i=1;i<=100;i++)); do wget example.com/imageID_${i}_2018.gif; done

Vassil
sumber
3
Selamat datang di Pengguna Super. Harap edit jawaban Anda untuk memberikan detail lebih lanjut. Tidak semua orang yang membaca posting Anda dapat memahami bagaimana menjawab pertanyaan OP tanpa penjelasan yang lebih rinci.
Saya katakan Reinstate Monica
1
Saya tidak yakin ini adalah jawaban. Sepertinya penjelasan tentang jawaban yang diterima (dan bukan jawaban yang sangat jelas).
Scott