ابزار wget بهترین گزینه برای دانلود فایل از اینترنته.wget به راحتی میتونه از پس دانلود های پیچیده ، که شامل دانلود فایل های بزرگ ، دانلود های بازگشتی ، دانلود به صورت non-interactive و دانلود چند فایل به طور همزمان میشن ، بر بیاد.
ما در این مقاله قصد داریم طریقه استفاده از wget ، برای انواع مختلف دانلود را با استفاده از 15 مثال شرح بدیم.
1-دانلود یک فایل منفرد
مثال پایین ، یه فایل معمولی رو از اینترنت دانلود می کنه و در دایرکتوری جاری ذخیره می کنه.
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
در طول فرآیند دانلود یه نوار وضعیت مشاهده می شه که شامل اطلاعات زیره:
1) میزان پیشرفت دانلود با نسبت درصد. (برای مثال در تصویر پایین ٪31 از فایل دانلود شده.)
2) میزان بایتی که تا کنون دانلود شده.(در تصویر پایین 1,213,592 بایت از فایل دانلود شده.)
3) سرعت دانلود فعلی. (k/s 68.2 در تصویر پایین.)
4) زمان باقیمانده برای اتمام دانلود. (34 ثانیه در تصویر پایین.)
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2.1'
31% [=================> 1,213,592 68.2K/s eta 34s
حالت نوار وضعیت در زمان اتمام دانلود :
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2'
100%[======================>] 3,852,374 76.8K/s in 55s
2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]
2-دانلود و ذخیر فایل با نام متفاوت با استفاده از wget -O
به طور پیش فرض wget اسم فایل رو از آخرین کلمات بعد از آخرین اسلش انتخاب میکنه ، که گاهی اوقات آزار دهنده ست برای همین ما از آپشن wget -O استفاده می کنیم.
به عنوان مثال دستور زیر
$ wget http://www.vim.org/scripts/download_script.php?src_id=7701
فایل رو با نام download_script.php?src_id=7701 دانلود و ذخیره می کنه.اما فایل این یکی
$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701
با اسم taglist.zip ذخیره میشه.
3-تعیین سرعت دانلود با استفاده از wget -–limit-rate
وقتی که wget رو اجرا می کنید ، این ابزار به طور پیش فرض سعی می کنه که تمام پهنای باند موجود رو اشغال کنه.شاید شما به هر دلیلی نخواین این اتفاق بیوفته و دوست داشته باشین که سرعت دانلودتون رو کنترل کنید.برای این کار باید از آپشن limit-rate-- استفاده کنید:
$ wget --limit-rate=200k http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
4-ادامه ی دانلود ناتمام با استفاده از wget -c
با استفاده از wget -c میتونید فرآیند دانلودی که متوقف شده رو از سر بگیرید.
$ wget -c http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
وقتی که اقدام به دانلود یه فایل بزرگ می کنید و ناگهان دانلود در وسط راه قطع می شه ؛ اونجاست که آپشن
wget -c مفید واقع میشه.شما به جای دانلود دوباره ی تمام فایل میتونید با استفاده از این آپشن دانلود رو از جایی که متوقف شده ادامه بدید.
5-دانلود در Background با استفاده از wget -b
برای دانلود فایل های بزرگ ، فرآیند دانلود رو با استفاده از wget -b در background قرار بدید :
$ wget -b http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Continuing in background, pid 1984.
Output will be written to `wget-log'.
با استفاده از این آپشن می تونید در هنگام دانلود ، از خط فرمان استفاده کنید.همین طور میتونید از وضعیت دانلود در هر زمان بخواهید با استفاده از tail -f آگاه بشید.
$ tail -f wget-log
Saving to: `strx25-0.9.2.1.tar.bz2.4'
0K .......... .......... .......... .......... .......... 1% 65.5K 57s
50K .......... .......... .......... .......... .......... 2% 85.9K 49s
100K .......... .......... .......... .......... .......... 3% 83.3K 47s
150K .......... .......... .......... .......... .......... 5% 86.6K 45s
200K .......... .......... .......... .......... .......... 6% 33.9K 56s
250K .......... .......... .......... .......... .......... 7% 182M 46s
300K .......... .......... .......... .......... .......... 9% 57.9K 47s
6-ماسک زدن به wget با استفاده از wget -–user-agent
بعضی از وبسایت ها با تشخیص اینکه شما از مرورگر برای دانلود استفاده نمی کنید،می تونن اجازه دانلود به شما ندن.در این صورت شما می تونید با کمک گرفتن از wget -–user-agent به wget ماسک بزنید و اون رو به صورت یه مرورگر نشون بدید.
$ wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" URL-TO-DOWNLOAD
7-تست URL با استفاده از wget --spider
وقتی که می خواین دانلودی رو در برنامه تون قرار بدید باید ببینید که آیا دانلود به خوبی انجام خواهد شد یا نه.برای این کار URL مورد نظرتون رو باید جلوی wget --spider قرار بدید تا از صحت اون مطمئن بشید:
$ wget --spider DOWNLOAD-URL
اگر URL بدون مشکل باشه ، عبارات زیر به نمایش در میان:
$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.
و به این معناست که دانلود بدون مشکل انجام خواهد شد.اما اگر URL وارد شده دارای اشکال باشه اونوقت جملات زیر در خروجی قرار می گیرن:
$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 404 Not Found
Remote file does not exist -- broken link!!!
8-استفاده از wget --tries برای افزایش تعداد رفرش ها
اگر اتصال اینترنت مشکلی داشته باشه (که در ایران یه امر شایعه) و اگر فایلی که قصد دانلودشو دارید گنده باشه ، احتمال شکست دانلود بالا میره.به طور پیش فرض wget ، بیست بار دانلود رو refresh میکنه تا بالاخره دانلود انجام بشه.
در صورت احتیاج ، میتونید با استفاده از آپشن wget --tries تعداد این رفرش ها رو بالا ببرید:
$ wget --tries=75 DOWNLOAD-URL
9-دانلود چند فایل به طور همزمان با استفاده از wget -i
اول ، تمام URL ها رو در یه فایل متنی ذخیره کنید:
$ cat > download-file-list.txt
URL1
URL2
URL3
URL4
بعد ، فایل متنی download-file-list.txt رو به عنوان آرگومان در جلوی wget -i قرار بدید:
$ wget -i download-file-list.txt
10-دانلود یک وبسایت کامل با استفاده از wget --mirror
دستور زیر زمانی کاربرد داره که شما می خواین یه وبسایت کامل رو دانلود کنید.
$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
mirror-- : تمام آپشن های مناسب برای mirroring رو فعال می کنه.
p- : تمام فایل های لازم برای نمایش صحیح صفحات HTML رو دانلود می کنه.
convert-links-- : بعد از اتمام دانلود ، لینک ها رو برای استفاده ی محلی به سند تبدیل میکنه
P ./LOCAL-DIR- : تمام فایل ها و دایرکتوری ها رو در دایرکتوری مشخص شده توسط کاربر ، ذخیره می کنه.
WEBSITE-URL : آدرس وبسایتی که قصد دانلودشو دارید.
11-عدم دانلود یک نوع فایل معین ، در هنگام دانلود با استفاده از wget --reject
فرض کنید که یه سایت به درد بخور پیدا کردید ، اما نمی خواین عکساشو دانلود کنید.برای رسیدن به هدفتون باید از دستور زیر استفاده کنید:
$ wget --reject=gif WEBSITE-TO-BE-DOWNLOADED
12-با استفاده از آپشن o-، لاگ را به جای stderr در یک فایل ذخیره کن
وقتی میخواین log به جای چاپ در ترمینال در یک فایل ذخیره بشه.
$ wget -o download.log DOWNLOAD-URL
13-پایان دانلود وقتی که از سایز مشخص شده تجاوز کرد.
زمانی که بخواین یک دانلود وقتی که از 5 مگابایت بیشتر شد (یعنی وقتی که 5 مگابایت از اون فایل روی سیستم شما ذخیره شد) بایسته ، باید از wget -Q استفاده کنید.
$ wget -Q5m -i FILE-WHICH-HAS-URLS
14-دانلود فایل های مشخص شده با استفاده از wget -r -A
شما می تونید از این آپشن برای موقعیت هایی مانند مثال های زیر استفاده کنید:
دانلود تمام عکس های یک وبسایت
دانلود تمام ویدیو های یک وبسایت
دانلود تمام فایل های pdf یک وبسایت
.
.
.
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/
15-دانلود FTP با استفاده از wget
میتونید برای دانلود FTP از wget به صورت زیر استفاده کنید:
دانلود FTP به صورت ناشناس:
$ wget ftp-url
دانلود FTP با استفاده از username و password :
$ wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL
-------------------------------------------------------------------------------------------
در پایان دوست دارم بگم یکی از مهم ترین دلایلی که گنولینوکس کاربرانش رو برای همیشه به استفاده از خودش وا می داره ، وجود ابزار های کوچک و بسیار قدرتمند بر روی این سیستم عامله دوست داشتنیه.
سیستم عاملی که بیش از تمام رقبایش ، جهان تکنولوژری را تغییر داد و ثابت کرد که کارش را چه در قلب یک ابرکامپیوتر عظیم و یا یک مریخ نورد پیشرفته و چه در دل قهوه ساز های خانگی و ساعت های مچی به نحو احسن انجام می ده.
منبع : thegeekstuff.com