اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

دستور wget برای دانلود فایل ها در لینوکس

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    دستور wget برای دانلود فایل ها در لینوکس

    در این پست ما قصد داریم مروری بر دستور لینوکسی wget که فایل را از www (اینترنت) download میکند، داشته باشیم که به صورت گسترده ای از پروتکل های HTTP, HTPS, FTP استفاده میکند. ابزار wget به صورت رایگان و تحت لایسنس GNU/GPL ریلیز شده است. این ابزار میتواند در هر سیستم شبیه به unix نصب شود همانند ویندوز و سیستم عامل مک. این ابزار به گونه ای طراحی گردیده که در کانکشن های شبکه غیرپایدار و یا کند هم به خوبی کار میکند.
    دستور wget در لینوکس





    همچنین توصیه میشود مطالعه کنید.

    دستور Aria2 - یک ابزار دانلود در ترمینال لینوکس

    دستور curl در لینوکس به همراه 15 مثال عملی

    چگونه با استفاده از Wget در پوشه خاصی فایل ها را دانلود کنیم

    نحوه محدود کردن سرعت دانلود در دستور wget


    wget به صورت اتوماتیک دانلود را بعد از مشکلات شبکه هم آغاز میکند. همچنین فایل دانلود برگشت پذیر میباشد در حقیقت تا زمان دریافت کامل فایل همچنان تلاش برای دانلود را متوقف نمیکند.

    ابتدا چک کنید که آیا wget در سیستم تان نصب هست یا نیست :
    کد PHP:
    # rpm -qa wget  

    wget-1.12-1.4.el6.i686 
    اگر نصب نبود با استفاده از YUM و یا با استفاده از دانلود پکیج binary از آدرس http://ftp.gnu.org/gnu/wget/ نصب کنید :
    کد PHP:
    # yum -y install wget 
    آپشن y- که در کامند بالا استفاده شده برای این منظور است که از شما سوال تاییدی روی نصب هر پکیجی نداشته باشد. اگر دقت کرده باشید بعد از زدن yum در prompt از شما تاییدیه نصب میخواهد که با زدن y نصب آن پکیج ها را تایید میکنید. در حقیقت با لحاظ کردن این آپشن در خود دستور yum این دستور دیگر از شما برای نصب پکیج ها تاییدیه نمیگیرد.


    برای اطلاع از گزینه های بیشتر دستور yum مقاله های زیر را مطالعه بفرمایید :

    دستور YUM در لینوکس برای مدیریت پکیج ها به همراه 20 مثال عملی



    1 - دانلود یک فایل به تنهایی

    دستور wget زیر یک فایل مجزا را دانلود کرده و در دایرکتوری جاری ذخیره میکند. همچنین درصد دانلود، سایز، تاریخ و زمان را در هنگام دانلود نمایش میدهد :
    کد PHP:
    # wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

    --2012-10-02 11:28:30--  http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
    Resolving ftp.gnu.org... 208.118.235.202001:4830:134:3::b
    Connecting to ftp
    .gnu.org|208.118.235.20|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    446966 (436K) [application/x-gzip]
    Saving towget-1.5.3.tar.gz
    100
    %[===================================================================================>] 446,966     60.0K/s   in 7.4s
    2012
    -10-02 11:28:38 (58.9 KB/s) - wget-1.5.3.tar.gz 


    2 - دانلود فایل با اسمی متفاوت

    با استفاده از اپشن O- (اوی بزرگ) در دستور wget به فایلی که میخواهیم دانلود کنیم نامی متفاوت میدهیم. همانطور که در مثال زیر میبینید فایلی که میخواهید دانلود کنید را با نام wget.zip در دایرکتوری جاری ذخیره میکند :
    کد PHP:
    # wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

    --2012-10-02 11:55:54--  http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
    Resolving ftp.gnu.org... 208.118.235.202001:4830:134:3::b
    Connecting to ftp
    .gnu.org|208.118.235.20|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    446966 (436K) [application/x-gzip]
    Saving towget.zip
    100
    %[===================================================================================>] 446,966     60.0K/s   in 7.5s
    2012
    -10-02 11:56:02 (58.5 KB/s) - wget.zip 


    3 - دانلود چندین فایل با پروتکل HTTP و FTP

    در مثال زیر ما میبینیم که چگونه با استفاده از wget چندین فایل با استفاده از پروتکل http و ftp در یک لحظه دانلود میشود :
    کد PHP:
    # wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig

    --2012-10-02 12:11:16--  http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
    Resolving ftp.gnu.org... 208.118.235.202001:4830:134:3::b
    Connecting to ftp
    .gnu.org|208.118.235.20|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    446966 (436K) [application/x-gzip]
    Saving towget-1.5.3.tar.gz

    100
    %[===================================================================================>] 446,966     56.7K/s   in 7.6s

    2012
    -10-02 12:11:29 (57.1 KB/s) - wget-1.5.3.tar.gz

    --2012-10-02 12:11:29--  ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig
               
    => wget-1.10.1.tar.gz.sig

    Logging in 
    as anonymous ... Logged in!
    ==> 
    SYST ... done.    ==> PWD ... done.
    ==> 
    TYPE I ... done.  ==> CWD (1) /gnu/wget ... done.
    ==> 
    SIZE wget-1.10.1.tar.gz.sig ... 65
    ==> PASV ... done.    ==> RETR wget-1.10.1.tar.gz.sig ... done.
    Length65 (unauthoritative)

    100%[===================================================================================>] 65          --.-K/s   in 0s

    2012
    -10-02 12:11:33 (2.66 MB/s) - wget-1.10.1.tar.gz.sig

    FINISHED 
    --2012-10-02 12:11:33--
    Downloaded2 files437K in 7.6s (57.1 KB/s


    4 - خواندن URL از یک فایل

    شما میتوانید تعدادی url در یک فایل متنی ذخیره کنید و همه آنها را با استفاده از آپشن i- به همراه دستور wget دانلود کنید. در کامند زیر ما فایل tmp.txt را در پوشه wget ایجاد کردیم و در این فایل چندین url برای دانلود قرار دادیم :
    کد PHP:
    # wget -i /wget/tmp.txt

    --2012-10-02 12:34:12--  http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig
    Resolving ftp.gnu.org... 208.118.235.202001:4830:134:3::b
    Connecting to ftp
    .gnu.org|208.118.235.20|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    446966 (436K) [application/x-gzip]
    Saving towget-1.10.1.tar.gz.sig

    100
    %[===================================================================================>] 446,966     35.0K/s   in 10s

    2012
    -10-02 12:34:23 (42.7 KB/s) - wget-1.10.1.tar.gz.sig

    --2012-10-02 12:34:23--  http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso
    Resolving mirrors.hns.net.in... 111.91.91.342401:4800::111:91:91:34
    Connecting to mirrors
    .hns.net.in|111.91.91.34|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    1761607680 (1.6G) [application/octet-stream]
    Saving toCentOS-6.3-x86_64-LiveDVD.iso

     45
    %[==========================================                                          ] 1,262,000   51.6K/s  eta 8h 17m 


    5 - از سرگیری دانلود های ناقص

    در مواردی که فایل های بزرگی در حال دانلود هستند احتمال متوقف شدن یا ناتمام ماندن دانلود به هر دلیلی وجود دارد. آپشن c- در wget امکان دانلود ادامه فایل را میسر میکند اما زمانی که فایل را بدون آپشن c- دانلود میکنید wget عبارت 1. را به پایان فایل اضافه میکند که نشان دهنده یک دانلود تازه میباشد. در نتیجه کار درست این است که از آپشن c- استفاده کنیم تا ادامه دانلود در همان فایل دانلود و ذخیره شود :
    کد PHP:
    # wget -c http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

    --2012-10-02 12:46:57--  http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso
    Resolving mirrors.hns.net.in... 111.91.91.342401:4800::111:91:91:34
    Connecting to mirrors
    .hns.net.in|111.91.91.34|:80... connected.
    HTTP request sentawaiting response... 206 Partial Content
    Length
    1761607680 (1.6G), 1758132697 (1.6Gremaining [application/octet-stream]
    Saving toCentOS-6.3-x86_64-LiveDVD.iso

     51
    % [=================================================                                  ] 3,877,262   47.0K/s  eta 10h 27m 


    6 - دانلود فایل با اضافه کردن 1. در انتهای نام فایل

    زمانی که شما شروع به دانلود یک فایل بدون آپشن c- میکنید wget بعد از شروع کردن دانلود مجدد به انتهای فایل جدید 1. اضافه میکند و اگر فایل با 1. موجود باشد 2. به آخر فایل اضافه میکند :
    کد PHP:
    # wget http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

    --2012-10-02 12:50:49--  http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso
    Resolving mirrors.hns.net.in... 111.91.91.342401:4800::111:91:91:34
    Connecting to mirrors
    .hns.net.in|111.91.91.34|:80... connected.
    HTTP request sentawaiting response... 200 OK
    Length
    1761607680 (1.6G) [application/octet-stream]
    Saving toCentOS-6.3-x86_64-LiveDVD.iso.1

     18
    % [==================                                                                 ] 172,436     59.2K/
    نمونه فایل های با پسوند 1. اضافه شده در انتهای فایل را مشاهده کنید :
    کد PHP:
    # ls -l CentOS*

    -rw-r--r--. 1 root root 3877262 Oct  2 12:47 CentOS-6.3-x86_64-LiveDVD.iso
    -rw-r--r--. 1 root root  181004 Oct  2 12:50 CentOS-6.3-x86_64-LiveDVD.iso.1 


    7 - دانلود فایل ها در background

    با گزینه b- در دستور wget شما میتوانید دانلود را سریعا بعد از شروع آن به بک گراند ترمینال تان ارسال کنید و لاگ ها را به فایل /wget/logfile/ ارسال کنید :
    کد PHP:
    # wget -b /wget/log.txt ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso

    Continuing in backgroundpid 3550. 


    8 - اعمال محدودیت های سرعت دانلود

    با آپشن limit-rate=100k- در دستور wget سرعت دانلود به 100 درصد محدود میشود و لاگ ها به فایل /wget/log.txt/ ارسال میشود :



    9 - محدود کردن دانلودهای FTP و HTTP با username و password

    با گزینه http-user=username- و http-password=password- و ftp-user-username- و ftp-password=password- شما میتوانید روی دانلود های سایت های http و ftp محدودیت پسورد بگذارید :
    کد PHP:
    # wget --http-user=narad --http-password=password http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso 
    کد PHP:
    # wget --ftp-user=narad --ftp-password=password ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso 


    10 - پیدا کردن ورژن wget و help

    با گزینه های version-- و help-- شما میتوانید ورژن و راهنمای دستور wget را در صورت نیاز مشاهده کنید :
    کد PHP:
    # wget --version

    # wget --help 
    در این مقاله ما دستور wget به همراه آپشن هایش را برای task روزانه ادمین های شبکه آموزش دادیم اگر میخواهید بیشتر درباره wget بدانید از صفحه man ان بازدید کنید.

    استفاده از آموزشهای منطقه لینوکسی ها با کمی تغییر در عنوان و متن نوشته ها غیر قابل قبول منطقه لینوکسی ها میباشد.

    موفق باشید
    محمد هابیلی
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 01-24-2021, 12:37 PM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی
در حال انجام ...
X