Tasodifiy tanlovni har bir ish uchun ishga tushiriladigan shell ichiga joylashtiring. Tashqi shell ichida buyruq almashtiruvini kengaytirsangiz, qiymat xargs ishini boshlashidan oldin tanlanadi.

Har bir satrda bitta proksi URL boʻlgan tekshirilgan proxies.txt bilan ommaviy nomzodlar bepul proksilar roʻyxatidan kelishi mumkin; har bir yozuvni curl qoʻllab-quvvatlaydigan protokol bilan formatlang:

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 har bir buyruqqa bitta URL beradi, -P 4 esa bir vaqtning oʻzida toʻrttagacha buyruqqa ruxsat beradi. Nol bilan ajratilgan kiritish URLni bitta argument sifatida saqlaydi. Pastki chiziq sh ning $0 oʻrnini egallaydi va URL $1 ichida qoladi.

Har bir bola shell shuf ni mustaqil ishga tushiradi. Tasodifiy tanlov bir xil proksini bir necha marta tanlashi mumkin; bu navbatma-navbat rejalashtirish emas va turli chiqish manzillariga kafolat bermaydi.

Aniq boʻsh chetlab oʻtish roʻyxati meros qolgan no_proxy sozlamasining tanlangan vositachini chetlab oʻtishini oldini oladi. Misol javob tanasini tashlab yuboradi; bir vaqtda yuklab olishlarni saqlashda alohida chiqish yoʻllaridan foydalaning.

O'xshash maqolalar