دو دانلود، دو پراکسی، یک فرمان curl
برای تعیین پراکسیها و فایلهای خروجی جداگانه، از مرزهای انتقال curl استفاده کنید تا خط فرمان مبهم نباشد.
قرار دادن دو URL پس از یک گزینهٔ --proxy هر دو را از یک پراکسی عبور میدهد. وقتی هر دانلود به مسیر خودش نیاز دارد، برای curl مرز انتقال بگذارید:
curl --proxy http://203.0.113.10:8080 \
--output first.html https://example.com/ \
--next \
--proxy http://203.0.113.20:8080 \
--output second.html https://example.org/
هر دو نشانی پراکسی جاینگهدارند؛ نقاط پایانی HTTP را از سرویس خود یا فهرست پراکسی HTTP انتخاب کنید. گزینهٔ --next انتقال دیگری را با مجموعهٔ تازهای از گزینههای محلی آغاز میکند. پراکسی دوم را صریح بنویسید. گزینهای که پیش از مرز دادهاید شاید لازم باشد بعد از آن دوباره داده شود.
این نمونه ترتیبی است. بررسی جفتشدن مقصد، فایل خروجی و پراکسی را آسان میکند. curl انتقالهای موازی را هم پشتیبانی میکند، اما موازیسازی زمانبندی را تغییر میدهد و برای هر URL پراکسی را خودکار انتخاب نمیکند.
در مورد فایل متنی جفتها احتیاط کنید
خطی شامل proxy-address destination-url قالب برنامهٔ شماست. curl معنای این ستونها را از متن دلخواه حدس نمیزند. حلقهٔ shell، پیکربندی تولیدشدهٔ curl یا توزیعکنندهٔ کوچک دیگری باید هر رکورد را به گزینههای صریح تبدیل کند.
آرگومانها را بهصورت آرگومان نگه دارید. ساختن فرمان با چسباندن URLهای نامطمئن میتواند به فاصلهها یا نویسههای shell اجازه دهد معنا را تغییر دهند. برای کارهای تکراری، نحو مستند فایل پیکربندی curl از رشتهٔ طولانی ساختهشده با دست آسانتر بررسی میشود.
نتیجهٔ هر انتقال را جداگانه ثبت کنید. موفقیت دانلود اول دربارهٔ مسیر یا پاسخ دوم چیزی نمیگوید. مهلتها و مدیریت خطا را به انتقالی بچسبانید که به آنها نیاز دارد و وقتی تنظیمی ظاهراً ناپدید شد مرز را بررسی کنید.