تکه تکه کردن فایل ها برای دانلود همزمان با curl

25 05 2011

خیلی وقتا مثل الآن من ممکنه هر چی ابزار اتوماتیک برای یه کار دارین درست کار نده یا به هر دلیلی ازشون خوشتون نیاد!! مثل aria2c که الآن واسم فایل ها رو تکه تکه نمیکنه
مزیت curl هم اینه که اکثر پروتوکل های معروف تبادل اطلاعات رو پشتیبانی میکنه.
شما میتونید کاری که aria2 انجام میده رو به طور دستی انجام بدین یعنی به سرور اطلاع بدین که من این فایل رو از این بایت تا یه بایت دیگش رو میخوام!
با دستور زیر قسمتی از یک فایل رو دانلود میکنین (البته سرور باید قابلیت تکه تکه دادن فایل رو داشته باشه یا به عبارت دیگه لینک مستقیم باشه)
curl --range 0-199999999 -o file.part1 URL
دستور بالا میگه از بایت ۰ تا بایت ۱۹۹۹۹۹۹۹۹ رو واسم دانلود کن!
تصور کنید میخوایم یه یه فایل ۴۰۰ مگابایتی رو به ۲ تکه تقسیم کنیم و همچنین میخوایم تکه ی اول رو از سرور ۱ و تکه ی دوم رو از سرور دوم دانلود کنیم
مزیت این کار اینه که در صورت پایین بودن سرعت سرویس دهی سرور ها شما از ۲ سرور به طور همزمان برای دانلود یه فایل استفاده کردید!!
curl --range 0-199999999 -o file.part1 URL1 & curl --range 200000000- -o file.part2 URL2
پس از اتمام دانلود با cat میتونید فایل ها رو یکی کنید! (فقط ترتیب شماره زنی فایل ها رو رعایت کنید تا خطایی در الحاق کردن چند فایل اتفاق نافته)
cat file.part? > file
علامت & در دستور برای همزمان اجرا کردن دستور ها استفاده شده. قالب –range به صورت زیر هست:
میشه یه بازه تعیین کرد: مثلا واسه دانلود بازه بسته بایت a تا b
میشه عدد اولی رو ننوشت و بگیم مثلا -500 که در این حالت ۵۰۰ بایت آخر رو دانلود میکنه
یا میشه 500- استفاده کرد که از بایت ۵۰۰ تا آخر فایل رو میاره

About these ads

کارها

Information

One response

10 06 2011
شادمهر

tnx

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s




دنبال‌کردن

هر نوشتهٔ تازه‌ای را در نامه‌دان خود دریافت نمایید.

%d وب‌نوشت‌نویس این را دوست دارند: