Kaip naudoti "wget ​​Linux" komandą, norint atsisiųsti žiniatinklio puslapius ir failus

"Wget" programa leidžia jums atsisiųsti tinklalapius, failus ir vaizdus iš interneto naudodami komandinę eilutę Linux.

Galite naudoti vieną wget komandą atskirai atsisiųsti iš svetainės arba nustatyti įvesties failą, norėdami atsisiųsti kelis failus keliose svetainėse.

Pagal vadovą, wget galima naudoti net tada, kai vartotojas išeina iš sistemos. Norėdami tai padaryti, naudokite komandą nohup.

"Wget" programa vėl bandys atsisiųsti net tada, kai ryšys sumažės, ir iš naujo pradės veikti, jei bus įmanoma, kai ryšys grįš.

Galite atsisiųsti visas tinklalapius naudodamiesi "wget" ir konvertuoti nuorodas į vietinius šaltinius, kad galėtumėte peržiūrėti svetainę neprisijungę.

"Wget" savybės yra tokios:

Kaip atsisiųsti svetainę naudojant wget

Šiame vadove parodysiu, kaip atsisiųsti mano asmeninį tinklaraštį.

wget www.everydaylinuxuser.com

Verta kurti savo aplanką savo kompiuteryje, naudodami komandą mkdir, o tada perkelkite į aplanką naudodami cd komandą .

Pavyzdžiui:

mkdir everydaylinuxuser
cd everydaylinuxuser
wget www.everydaylinuxuser.com

Rezultatas yra vienas failas index.html. Viena vertus, šis failas yra gana nenaudingas, nes turinys vis dar ištraukiamas iš "Google", o vaizdai ir stiliai vis dar laikomi "Google".

Norėdami atsisiųsti visą svetainę ir visus puslapius, galite naudoti šią komandą:

wget -r www.everydaylinuxuser.com

Tai atsisiunčia puslapius rekursiškai, daugiausia iki 5 lygių giliai.

5 gylio lygiai gali būti nepakankami, kad gautumėte viską iš svetainės. Galite naudoti -l jungiklį, kad nustatytumėte norimų lygių skaičių:

wget -r -l10 www.everydaylinuxuser.com

Jei norite begalinę rekursiją, galite naudoti:

wget -r -l inf www.everydaylinuxuser.com

Taip pat galite pakeisti inf 0 reikšmę, tai reiškia tą patį.

Dar viena problema. Jūs galite gauti visus puslapius vietoje, bet visos puslapių nuorodos vis dar nurodo į jų pradinę vietą. Todėl negalima vietoje spustelėti nuorodų puslapiuose.

Šią problemą galite išspręsti naudodami -k jungiklį, kuris konvertuoja visas puslapių nuorodas, nurodydamas jų ekrane parsiųstą lokaliai:

wget-r -k www.everydaylinuxuser.com

Jei norite gauti visą svetainės veidrodį, galite tiesiog naudoti šį jungiklį, kuris pašalina būtinybę naudoti -r -k ir -l jungiklius.

wget-m www.everydaylinuxuser.com

Todėl, jei turite savo svetainę, galite atlikti pilną atsarginę kopiją naudodami šią vieną paprastą komandą.

Vykdyti wget kaip fono komandą

Jūs galite gauti wget paleisti kaip fono komandą, paliekant jums galimybę patekti į savo darbą terminalo lange, kol failus atsisiųsti.

Tiesiog naudokite šią komandą:

wget -b www.everydaylinuxuser.com

Jūs, žinoma, galite sujungti jungiklius. Norėdami paleisti "wget" komandą fone, o atstatant svetainę, naudokitės šia komanda:

wget-b-m www.everydaylinuxuser.com

Galite to supaprastinti taip:

wget-bm www.everydaylinuxuser.com

Miško kirtimas

Jei naudojate komandą wget fone, nematysite jokių įprastų pranešimų, kuriuos ji siunčia ekrane.

Galite visus šiuos pranešimus siųsti į žurnalo failą, kad bet kuriuo metu galite patikrinti pažangą naudodami uodegos komandą .

Norint iš komandų wget gauti informaciją iš žurnalo failo, naudokite šią komandą:

wget -o / path / to / mylogfile www.everydaylinuxuser.com

Žinoma, atvirkštinis reikalavimas nereikalauja jokio registravimo ir jokio išėjimo į ekraną. Norėdami praleisti visą išvestį, naudokite šią komandą:

wget-q www.everydaylinuxuser.com

Atsisiųsti iš kelių svetainių

Galite nustatyti įvesties failą, kurį norite atsisiųsti iš daugybės skirtingų svetainių.

Atidarykite failą naudodami mėgstamiausią redaktorių ar net katės komandą ir tiesiog pradėkite įrašyti svetaines ar nuorodas, kurias norite atsisiųsti iš kiekvienos failo eilutės.

Išsaugokite failą ir paleiskite šią wget komandą:

wget -i / path / to / inputfile

Neatsižvelgiant į atsarginę kopiją savo tinklalapyje arba galbūt rasti ką nors atsisiųsti skaityti traukinyje, mažai tikėtina, kad jūs norite atsisiųsti visą svetainę.

Greičiausiai atsisiunčiate vieną URL su vaizdais arba galbūt atsisiųsite failus, pvz., ZIP failus, ISO failus ar vaizdo failus.

Atsižvelgdami į tai, nenorite įvesties į įvesties failą taip, kaip reikalauja daug laiko:

Jei žinote, kad pagrindinis URL visada bus tas pats, galite įvesti įvesties byloje tik šiuos duomenis:

Tuomet pagrindinį URL galite pateikti kaip komandinės wget komandos dalį taip:

wget-B http://www.myfileserver.com -i / path / to / inputfile

Pakartotinės parinktys

Jei nustatėte failų eilę, kurią norite atsisiųsti per įvesties failą, o jūs paliekate kompiuterį visą naktį, kad atsisiųstumėte failus, jūs būsite gana erzina, kai atsibusiesit ryte, kad nustatytumėte, kad jis įstrigo pirmame faile ir buvo bandoma visą naktį.

Galite nurodyti pakartotinų bandymų skaičių naudodami šį jungiklį:

wget -t 10 -i / path / to / inputfile

Galbūt norėsite naudoti pirmiau pateiktą komandą kartu su -T jungikliu, kuris leidžia jums nustatyti sekundžių laiką tokia tvarka:

wget -t 10 -T 10 -i / path / to / inputfile

Pirmiau pateikta komanda pakartotinai bandys 10 kartų ir bandys prisijungti 10 sekundžių kiekvienai failo nuorodai.

Tai taip pat gana erzinanti, kai iš dalies atsisiųsite 75% 4 gigabaitų failo lėtai plačiajuosčio ryšio, tik norėdami prisijungti prie interneto.

Galite naudoti "wget" pakartotinai, iš kur ji nustojo atsisiunčiama, naudodami šią komandą:

wget-c www.myfileserver.com/file1.zip

Jei kenkėjatės serverio, priimančioji gali tai nepatinka, ir gali blokuoti arba tiesiog užmušti jūsų užklausas.

Galite nurodyti laukimo laikotarpį, nurodantį, kiek laiko laukti tarp kiekvieno išieškojimo:

wget -w 60 -i / path / to / inputfile

Pirmiau pateiktas komandas laukia 60 sekundžių tarp kiekvieno atsisiuntimo. Tai naudinga, jei siunčiate daug failų iš vieno šaltinio.

Kai kurie žiniatinklio pavadinimai gali pastebėti dažnumą ir vis tiek blokuos jus. Laukimo laikotarpį galite pasirinkti atsitiktine tvarka, kad atrodytų, kad nenaudojate programos taip:

wget --random-wait-i / path / to / inputfile

Atsisiųsti apribojimų apsauga

Daugelis interneto paslaugų teikėjų vis dar taiko jūsų naudojimosi plačiajuosčiu ryšiu apribojimus, ypač jei gyvenate už miesto ribų.

Galbūt norėsite pridėti kvotą, kad nesugadintumėte šio atsisiųsti limito. Tai galite padaryti taip:

wget -q 100m -i / path / to / inputfile

Atkreipkite dėmesį, kad -q komanda neveiks su vienu failu.

Taigi, jei atsisiųsite failą, kurio dydis yra 2 gigabaitai, naudojant -q 1000 m nesibaigs failų atsisiuntimas.

Kvota taikoma tik tuo atveju, kai jis perkuriamas iš svetainės arba naudojamas įvesties failas.

Pasirengimas saugumu

Kai kuriose svetainėse reikia prisijungti, kad galėtumėte pasiekti turinį, kurį norite atsisiųsti.

Galite naudoti šiuos jungiklius, norėdami nurodyti naudotojo vardą ir slaptažodį.

wget --user = jūsų vartotojo vardas - slaptažodis = jūsų slaptažodis

Pastaba daugelio vartotojų sistemai, jei kas nors paleidžia ps komandą, galės pamatyti savo vartotojo vardą ir slaptažodį.

Kitos atsisiųsti parinktys

Pagal numatytuosius žodžius -r jungiklis rekursyviai atsisiųs turinį ir sukurs katalogus taip, kaip jis eina.

Galite visus failus atsisiųsti į vieną aplanką naudodami šį jungiklį:

wget -nd-r

Priešingai, tai verčia kurti katalogus, kuriuos galima pasiekti naudojant šią komandą:

wget-x-r

Kaip atsisiųsti tam tikrus failų tipus

Jei norite atsisiųsti rekursyvų iš svetainės, bet norite tik atsisiųsti tam tikrą failo tipą, pvz., Mp3 ar vaizdą, pvz., Png, galite naudoti šį sintaksę:

wget -A "* .mp3" -r

Kita vertus, ignoruojame tam tikrus failus. Galbūt nenorite atsisiųsti vykdomųjų failų. Tokiu atveju naudosite tokį sintaksę:

Wget-R "* .exe" -r

"Cliget"

Yra "Firefox" papildinys, pavadintas "cliget". Šį būdą galite pridėti prie "Firefox" taip:

Apsilankykite https://addons.mozilla.org/en-US/firefox/addon/cliget/ ir spustelėkite mygtuką "pridėti prie" Firefox ".

Kai pasirodys, spustelėkite diegimo mygtuką. Turėsite iš naujo paleisti "Firefox".

Jei norite naudoti "cliget", apsilankykite puslapyje arba failo, kurį norite atsisiųsti, ir dešiniuoju pelės mygtuku spustelėkite. Pasirodo kontekstinis meniu, pavadintas cliget, ir bus galimybės "kopijuoti į wget" ir "kopijuoti į curl".

Spustelėkite parinktį "kopijuoti į wget" ir atidarykite terminalo langą, tada dešiniuoju pelės mygtuku spustelėkite ir įklijuokite. Atitinkama komanda wget bus įklijuota į langą.

Iš esmės tai taupo, kad turite įvesti komandą sau.

Santrauka

Wget komanda yra daugybė galimybių ir jungiklių.

Todėl verta nuskaityti wget rankinį puslapį , įvesdami šiuos terminus į langą:

vyras wget