Aseta juhuslik valik kesta, mis iga töö jaoks käivitatakse. Käsukäsu asenduse laiendamine väliskestas valib väärtuse enne, kui xargs oma tööd alustab.

Valideeritud proxies.txt-iga, kus igal real on üks puhverserveri URL, võivad avalikud kandidaadid pärineda tasuta puhverserverite loendist; vormista iga kirje curl-i toetatud protokolliga:

printf '%s\0' 'https://a.example/one' 'https://b.example/two' |
  xargs -0 -n 1 -P 4 sh -c '
    proxy=$(shuf -n 1 proxies.txt) || exit 1
    [ -n "$proxy" ] || exit 1
    curl --fail --silent --show-error --max-time 30 \
      --proxy "$proxy" --noproxy "" --output /dev/null "$1"
  ' _

-n 1 annab igale käsule ühe URL-i ja -P 4 lubab korraga kuni neli käsku. Nullidega eraldatud sisend säilitab URL-i ühe argumendina. Alakriips võtab sh-i $0 positsiooni, jättes URL-i $1 kohta.

Iga alamkest käivitab shuf-i iseseisvalt. Juhuslik valik võib sama puhverserveri valida rohkem kui üks kord; see ei ole ringkäivitus ega taga erinevaid väljumisaadresse.

Selgesõnaliselt tühi möödaviigu loend hoiab päritud no_proxy seade valitud vahendajast mööda minemast. Näide heidab vastusekehad kõrvale; paralleelsete allalaadimiste salvestamisel kasuta eraldi väljundteid.

Seotud artiklid