Skip to content

Hur man använder wget Linux -kommandot för att ladda ner webbsidor och filer

12 de augusti de 2021
computer code 172295014 59a8652e054ad90010e98956

Vad man ska veta

  • För att ladda ner en fullständig webbplats, använd följande kommando med webbplatsens webbadress: wget -r [site address]
  • För att köra wget som bakgrundskommando, använd: wget -b [site address]

Funktioner i wget Command

Du kan ladda ner hela webbplatser med wget och konvertera länkarna till pek till lokala källor så att du kan se en webbplats offline. Wget -verktyget försöker också ladda ner igen när anslutningen faller och återupptas från där den slutade, om möjligt när anslutningen återkommer. Andra funktioner i wget är följande:

  • Ladda ner filer med HTTP, HTTPS och FTP.
  • Återuppta nedladdningar.
  • Konvertera absoluta länkar i nedladdade webbsidor till relativa webbadresser så att webbplatser kan ses offline.
  • Stöder HTTP -proxyservrar och cookies.
  • Stöder ihållande HTTP -anslutningar.
  • Det kan köras i bakgrunden även när du inte är inloggad.
  • Fungerar på Linux och Windows.

Hur man laddar ner en webbplats med wget

Wget -verktyget laddar ner webbsidor, filer och bilder från webben med Linux -kommandoraden. Du kan använda ett enda wget -kommando för att ladda ner från en webbplats eller ställa in en inmatningsfil för att ladda ner flera filer på flera webbplatser. Enligt den manuella sidan kan wget användas även när användaren har loggat ut från systemet. För att göra detta, använd kommandot nohup. För den här guiden lär du dig hur du laddar ner denna Linux -blogg: wget www.everydaylinuxuser.com

type = ”code”> Innan du börjar ska du skapa en mapp på din maskin med kommandot mkdir och sedan flytta till mappen med cd -kommandot. Till exempel: mkdir everydaylinuxuser
cd vardagslinuxanvändare
wget www.everydaylinuxuser.com

type = ”code”> Resultatet är en enda index.html -fil som innehåller innehållet från Google. Bilderna och formatmallarna finns på Google.

För att ladda ner hela webbplatsen och alla sidor, använd följande kommando: wget -r www.everydaylinuxuser.com

type = ”code”> Detta laddar ner sidorna rekursivt upp till högst fem nivåer djupt. Fem nivåer djup kanske inte räcker för att få allt från sajten. Använd -l växla för att ställa in antalet nivåer du vill gå till, enligt följande: wget -r -l10 www.everydaylinuxuser.com

type = ”code”> Om du vill ha oändlig rekursion, använd följande: wget -r -l inf www.everydaylinuxuser.com

type = ”code”> Du kan också ersätta inf med 0, vilket betyder samma sak. Det finns ytterligare ett problem. Du kan få alla sidor lokalt, men länkarna på sidorna pekar på den ursprungliga platsen. Det är inte möjligt att klicka lokalt mellan länkarna på sidorna.

Linux wget -fil nedladdning

För att komma runt detta problem, använd -k växla för att konvertera länkarna på sidorna för att peka på den lokalt nedladdade motsvarigheten, enligt följande: wget -r -k www.everydaylinuxuser.com

type = ”code”> Om du vill få en fullständig spegel av en webbplats använder du följande switch, vilket tar bort nödvändigheten för att använda -r, -k, och -l växlar. wget -m www.everydaylinuxuser.com

type = ”code”> Om du har en webbplats kan du göra en fullständig säkerhetskopia med det här enkla kommandot.

Kör wget som ett bakgrundskommando

Du kan få wget att köras som ett bakgrundskommando så att du kan fortsätta med ditt arbete i terminalfönstret medan filerna laddas ner. Använd följande kommando: wget -b www.everydaylinuxuser.com

typ = ”kod”>

Linux wget bakgrundsprocess

Du kan kombinera switchar. För att köra kommandot wget i bakgrunden medan du speglar webbplatsen, använd följande kommando: wget -b -m www.everydaylinuxuser.com

type = ”code”> Du kan förenkla detta ytterligare enligt följande: wget -bm www.everydaylinuxuser.com

typ = ”kod”>

Skogsavverkning

Om du kör wget -kommandot i bakgrunden ser du inga vanliga meddelanden som det skickar till skärmen. För att skicka dessa meddelanden till en loggfil så att du kan kontrollera utvecklingen när som helst, använd svans -kommandot. För att mata ut information från wget -kommandot till en loggfil, använd följande kommando: wget -o/path/to/mylogfile www.everydaylinuxuser.com

type = ”code”> Det omvända är att kräva ingen loggning alls och ingen utmatning till skärmen. För att utelämna all utmatning, använd följande kommando: wget -q www.everydaylinuxuser.com

typ = ”kod”>

Ladda ner från flera webbplatser

Du kan ställa in en inmatningsfil för nedladdning från många olika webbplatser. Öppna en fil med din favoritredigerare eller cat -kommandot och lista webbplatser eller länkar att ladda ner från varje rad i filen. Spara filen och kör sedan följande wget -kommando: wget -i/path/to/inputfile

type = ”code”> Förutom att säkerhetskopiera din webbplats eller hitta något att ladda ner för att läsa offline är det osannolikt att du vill ladda ner en hel webbplats. Det är mer troligt att du laddar ner en enda URL med bilder eller laddar ner filer som zip -filer, ISO -filer eller bildfiler. Med det i åtanke behöver du inte skriva in följande i inmatningsfilen eftersom det är tidskrävande:

  • http://www.myfileserver.com/file1.zip
  • http://www.myfileserver.com/file2.zip
  • http://www.myfileserver.com/file3.zip

Om du vet att basadressen är densamma anger du följande i inmatningsfilen:

  • file1.zip
  • file2.zip
  • file3.zip

Du kan sedan ange basadressen som en del av wget -kommandot enligt följande: wget -B http://www.myfileserver.com -i/path/to/inputfile

typ = ”kod”>

Försök igen

Om du ställer in en kö med filer för nedladdning i en inmatningsfil och du låter datorn vara igång för att ladda ner filerna, kan inmatningsfilen fastna medan du är borta och försöka ladda ner innehållet igen. Du kan ange antalet försök med följande switch: wget -t 10 -i/path/to/inputfile

type = ”code”> Använd kommandot ovan i samband med -T växla för att ange en timeout i sekunder, enligt följande: wget -t 10 -T 10 -i/path/to/inputfile

type = ”code”> Kommandot ovan försöker igen 10 gånger och ansluter i 10 sekunder för varje fillänk. Det är också obekvämt när du laddar ner 75% av en 4-gigabyte-fil på en långsam bredbandsanslutning, bara för att anslutningen ska släppas. För att använda wget för att försöka igen från där det slutade ladda ner, använd följande kommando: wget -c www.myfileserver.com/file1.zip

type = ”code”> Om du hamrar en server kanske värden inte gillar den och kan blockera eller döda dina förfrågningar. Du kan ange en väntetid för att ange hur länge du ska vänta mellan varje hämtning, enligt följande: wget -w 60 -i/path/to/inputfile

type = ”code”> Kommandot ovan väntar 60 sekunder mellan varje nedladdning. Detta är användbart om du laddar ner många filer från en enda källa. Vissa webbhoteller kan upptäcka frekvensen och blockera dig. Du kan göra väntetiden slumpmässig för att det ska se ut som om du inte använder ett program, enligt följande: wget –random -wait -i/path/to/inputfile

typ = ”kod”>

Skydda nedladdningsgränser

Många internetleverantörer tillämpar nedladdningsgränser för bredbandsanvändning, särskilt för dem som bor utanför en stad. Du kanske vill lägga till en kvot så att du inte överskrider nedladdningsgränsen. Du kan göra det på följande sätt: wget -q 100m -i/path/to/inputfile

type = ”code”> -q kommandot fungerar inte med en enda fil. Om du laddar ner en fil som är 2 gigabyte stor med -q 1000m hindrar inte filen från att ladda ner. Kvoten tillämpas endast vid rekursivt nedladdning från en webbplats eller vid användning av en inmatningsfil.

Få igenom säkerheten

Vissa webbplatser kräver att du loggar in för att komma åt innehållet du vill ladda ner. Använd följande switchar för att ange användarnamn och lösenord. wget –användare = ditt användarnamn -lösenord = ditt lösenord

type = ”code”> På ett fleranvändarsystem, när någon kör ps kommando kan de se ditt användarnamn och lösenord.

Andra nedladdningsalternativ

Som standard är -r switch laddar ner innehållet rekursivt och skapar kataloger allt eftersom. För att få alla filer att ladda ner till en enda mapp, använd följande switch: wget -nd -r

type = ”code”> Motsatsen till detta är att tvinga fram skapandet av kataloger, vilket kan uppnås med följande kommando: wget -x -r

typ = ”kod”>

Hur man laddar ner vissa filtyper

Om du vill ladda ner rekursivt från en webbplats, men du bara vill ladda ner en specifik filtyp, till exempel en MP3 eller en bild som en PNG, använder du följande syntax: wget -A ”*.mp3” -r

type = ”code”> Baksidan av detta är att ignorera vissa filer. Du kanske inte vill ladda ner körbara filer. I det här fallet använder du följande syntax: wget -R ”*.exe” -r

typ = ”kod”>

Cliget

Det finns ett Firefox-tillägg som heter cliget. Så här lägger du till detta i Firefox:

  1. Besök https://addons.mozilla.org/en-US/firefox/addon/cliget/ och klicka på lägg till i Firefox knapp.

  2. Klicka på Installera -knappen när den visas och starta sedan om Firefox.

  3. Om du vill använda cliget besöker du en sida eller fil som du vill ladda ner och högerklickar. En snabbmeny visas som kallas cliget, och det finns alternativ för kopiera till wget och kopiera till curl.

  4. Klicka på kopiera till wget alternativ, öppna ett terminalfönster, högerklicka och välj klistra. Lämpligt wget -kommando klistras in i fönstret.

Detta sparar dig från att behöva skriva kommandot själv.

Sammanfattning

Kommandot wget har flera alternativ och switchar. För att läsa den manuella sidan för wget skriver du följande i ett terminalfönster: man wget

class = ”ql-syntax”>