Linux Wget komandası və praktiki nümünələr
Salam dostlar, bugün biz Linux/Unix əməliyyat sistemlərində faylların vebdən yüklənməsi üçün ən çox istifadə olunan Wget utilitindən danışacağıq. Http, https, ftp protokollarını dəstəkləyir Wget utility interaktiv olmayan utilitdir yəni komandanı yazıb faylın yolunu göstərdikdən sonra arxa planda(background) çalışır və siz fayl yüklənməsini ləgv etməkdən(Ctrl+C) başqa heç bir müdaxilə edə bilməzsiniz.Asanlıqla deyə bilərəm ki, linuxla çalışan hər bir kəs ən azından Wget utilitindn bir dəfə olsun istifadə etmişdir. Bu məqalədə isə bu haqda müəyyən praktiki nümünələr göstərəcəm.
Linuxun bir çox distributivlərində sistemi yeniləyəndən sonra susmaya görə Wget utiliti yüklənir. Əgər sizin sistemdə olmasa aşağıdakı komanda vasitəsi ilə yükləyə bilərsiniz.
[root@server1 ~]# yum install wget -y
Wget
utilitinin sistemdə olduğuna əmin olduqdan sonra nümünələrə baxa bilərik.
Nümünə 1. Tək faylın yüklənməsi
[root@server1 ~]# wget http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso
Bu komanda CentOS 7.2 versiyalı əməliyyat sisteminin iso faylını hazırda olduğunuz direktoriya daxilinə yükləyəcək.
Nümünə 2. Faylı yükləyəndə internet kəsintisi olarsa.
Bəzən elə olurki, biz fayl yükləyərkən internet kəsintisi olur. Bu zaman Wget komandasının ‘-c’ xüsüsiyyəti vasitəsi ilə həmin yüklənməni qaldığı yerdən davam etdirə bilərik.(c- continue)
[root@server1 ~]# wget -c http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso
Nümünə 3. Arxa planda faylın yüklənməsi
Biz Wget komandasının ‘-b’ xüsüsiyyəti vasitəsi ilə faylı arxa planda yükləyə bilərik. Yəni biz bu xüsüsiyyətdən istifadə edərək,komandaın yazılmasından sonra heç bir çıxış görmürük sadəcə wget-log’a baxaraq yüklənən faylları nə vəziyyətdə olduğunu görmək olar.
[root@server1 ~]# wget -b http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/
Bu onun üçün yaxşıdır ki, siz yüklənmənin tamamlanmasını gözləmdən shelldə işləyə bilərsiniz.Yəni normal wget vasitəsi ilə yükləməni edərkən , siz shelldə hər hansı komandanı icra etmək üçün mütləq yüklənmənin tamamlanmasını gözləməlisiniz amma bu xüsüsiyyətlə buna ehtiyac yoxdur əmri yazan kimi komanda arxa plana düşür. Sonra isə tail –f wget-log komandasını yazsaq arxa planda olan yükləmələrə baxa bilərik.
[root@server1 ~]# tail -f wget-log
Burada gördüyünüz kimi , x86_64 direktoriyası içərisində nə varsa yüklənəcək və wget-log komandasını icra edib, yüklənmələri vaxtı göstərilməklə birlikdə bir-bir baxa bilərsiniz.
Nümünə 4. Yüklənmə sürətinə limit təyin etmək
Susmaya görə wget komandası faylı yükləyərkən tam internet sürətindən istifadə edir. Bəzən ola bilərki , siz paylaşılmış internetdən istifadə edə bilərsiniz. Bu zaman siz böyük fayllar yükləyərkən başqa personalların internetlə işləməsinə mane olacaqsınız. Bunun qarşısını almaq üçün wget komandası
–limit-rate xüsüsiyyətindən istifadə edilir.
[root@server1 ~]# wget --limit-rate=100k http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso
Yuxarıdakı komandadan istifadə etməklə 100k sürətlə yüklənməni edəcəkdir.
Nümünə 5. Çoxlu faylların ‘-i’ xüsüsiyyətindən istifadə edərək yüklənməsi.
Bəzən elə olur ki, siz birdən çox faylı yükləmək istəyirsiniz. Bu zaman gərək hər dəfə wget komandasını və faylını yolunu göstərəsiniz.Əgər 5 fərqli faylı yükləyəcəksəniz bu zaman 5 dəfə bunu ayrı-ayrı yazmalsınız.Amma bunun əvəzinə wget komandasını ‘-i’ xüsüsiyyətindən istifadə edərək faylları yükləyə bilərsiniz. Bu zaman siz yükləyəcəyiniz fayllarin yolarını sistemdə bir faylla ardıcıl şəkildə qeyd edib, sonra wgetdə o faylın yolunu göstərib istifadə edə bilərsiniz.
[root@server1 ~]# cat download-list.txt url1 url2 url3 url4 [root@server1 ~]#wget -i download-list.txt
Yazdıqdan sonra faylda qeyd etdiyiniz faylları ardıcıl şəkildə yükləyəcəkdir.
Nümünə 6. Yüklənmədə internet problemi olan zaman yenidən yüklənmə cəhdlərinin artırılması. Biz wget komandasının ‘–tries’ xüsüsiyyətindən istifadə edərək yenidən yüklənmə cəhdlərinin sayinı artıra bilərik.Susmaya görə bu rəqəm 20 olur. Daha aydın şəkildə desək, sizin internetinizdə kəsilmələr olan zaman wget’də susmaya görə 20 dəfə yenidən cəhd edib faylı yükləməyə çalışır.Siz isə bunu aşağıdakı komanda vasitəsi ilə istədiyiniz rəqəmə(mən 75 yazdım) çatdıra bilərsiniz.
[root@server1 ~]# wget --tries=75 http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso
Nümünə 7. Wget komandasınn loglarının başqa bir fayla yönləndirilməsi.
Bunu isə komandanın ‘-o’ xüsüsiyyətindən istifadə edərək edə bilərsiniz.
[root@server1 ~]# wget -o wgetlog.txt http://mirror.nbrc.ac.in/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso
wgetlog.txt faylı hazırda olduğunuz direktoriya çərçivəsində yaradılacaqdır. Bununla siz log faylı analiz edib harada kəsilmələr olub və s kimi baxa bilərsiniz.
Nümünə 8. Wget –Q xüsüsiyyətindən istifadə edərək, təyin etdiyiniz fayl içərisindəkı faylların yüklənmə ölçüsünə limit qoya bilərsiniz. Yəni siz bir fayl yaradıb, içərisinə müəyyən linklər yerləşdiril-misiniz hansı fərqli-fərqli saytlardan fayllar yükləmək istəyirsiniz. Bu zaman siz wgetdə bu faylın yolunu göstərib və ‘-Q’ yəni quota xüsüsiyyətindən istifadə edib, misal üçün deyə bilərsiniz ki, 10 Mb-dan çox faylları yükləməsin.
[root@server1 ~]# wget -Q10m -i download-list.txt
Nümünə 9. Parolla qorunan saytlardan faylın yüklənməsi.
[root@server1 ~]# wget --ftp-user=<user-name> --ftp-password=<password> Download-URL
formasında yazıb yükləməni edə bilərsiniz.
Bundan əlavə wget komandasının başqa xüsüsiyyətəri vardır. Bunu man wget yazıb ətraflı oxuya bilərsiniz. Mən çalışdım ki, bu mövzuda daha çox istifadə olunanları qeyd etdim. Ümid edirəm ki faydalı olacaqdır.
Gələn görüşlərədək….
Şərhlər ( 2 )
Gözəl və lazımlı məqalədir. Bu məqalələrdən başlayaraq yola çıxanlar, rahatlıqla Linux öyrənə bilərlər.
Təşəkkürlər.
Çox sag olun Elvin bəy.