Puncte:0

Cum să descărcați fișiere din fișier text

drapel co

Am mai multe fișiere text, cum ar fi a0001.txt, a0002.txt... până la a0900.txt, care conțin link-uri directe de imagini https://example.com/photos/example.jpg

Vreau să descarc în serie toate linkurile de la a0001.txt la folderul a0001 și așa mai departe în numele folderelor respective ca fișier text.

Linkurile trebuie descărcate în ordine, astfel încât imaginile au fost redenumite cu prefix. În scopuri de sortare.

Ce am încercat a fost mai jos. Dar descarcă câte un fișier pe rând. Super lent. O altă modalitate de a face în paralel?

#! /usr/bin/env
bashif [ -z $1 ] || egrep -qv '^https?:\/\/[^[:spaţiu:]]+' $1; atunci
  echo „Utilizare: $0 FILE”
  echo „FIȘIERUL trebuie să fie o listă de adrese URL separate de linii noi.”
  Ieșire
fi

INPUT_FILE=1 $
OUTPUT_DIRECTORY="${INPUT_FILE%.*}"

mkdir -p $OUTPUT_DIRECTORY

i=1
în timp ce se citește adresa URL; do
  FILENAME="${URL##*/}"
  curl -L $URL > „${OUTPUT_DIRECTORY}/${i}_${FILENAME}”
  i=$(($i+1))
terminat < $INPUT_FILE
terdon avatar
drapel cn
Este cu adevărat `#! /usr/bin/env` sau ați vrut să spuneți `#! /usr/bin/env bash`?
waltinator avatar
drapel it
Lipiți întotdeauna scriptul în `https://shellcheck.net`, un verificator de sintaxă sau instalați `shellcheck` local. Utilizarea „shellcheck” este parte a procesului de dezvoltare.
FedKad avatar
drapel cn
Puteți începe procesele `curl` în paralel, adăugând `&` la sfârșitul comenzii. Dar nu ar trebui să începeți prea multe procese. De exemplu, la fiecare zece iterații, puteți rula o comandă `wait`.
waltinator avatar
drapel it
Citiți `man seq` pentru a genera șirurile "`A00001, ..., A0900`. Adăugați "`&`" la comanda dvs. `curl`".

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.