Skip to content

Voorbeeldgebruik van het Linux Curl-commando

28 de juni de 2021
GettyImages 1159609720 4cca85cd684e4dc885929bb8c5d7fe0d

De krullen command verzendt bestanden via een netwerk of vanaf internet met behulp van een reeks veelgebruikte protocollen, waaronder HTTP, HTTPS, FTP en SMB. Gebruik het om toegang te krijgen tot FTP-sites, e-mails te verzenden, verbinding te maken met SAMBA-adressen, bestanden te uploaden en downloaden en gerelateerde taken. De krullen commando heeft veel parameters. U kunt een volledige lijst van deze parameters bekijken op de handleiding van de curl-pagina.

Basis ‘krul’-commandogebruik

In zijn basisvorm, krullen downloadt webpagina-inhoud naar het terminalvenster. Voer bijvoorbeeld de volgende opdracht in een terminalvenster in: curl http://www.google.com

De HTML van de bestemmingspagina van Google wordt weergegeven in uw standaarduitvoer.

Verwijs de inhoud van ‘krul’ naar een bestand

Wanneer u een object downloadt zoals een ISO-image, stuur het dan naar een bestand in plaats van naar de standaarduitvoer. Om de inhoud in een bestand op te slaan, specificeert u de -O schakel als volgt: curl -o

Voer de volgende opdracht in om de pagina te downloaden waarnaar wordt gelinkt in het gedeelte over het gebruik van basisopdrachten: curl -o google.htm http://www.google.com

Nadat het bestand is gedownload, opent u het in een editor of het standaardprogramma dat wordt bepaald door het bestandstype. U kunt dit verder vereenvoudigen door de -O schakel als volgt over: curl -O http://www.google.com/index.html

Deze schakeloptie gebruikt het bestandsnaamgedeelte van de URL en maakt het de bestandsnaam waarnaar de URL wordt opgeslagen. De -O en -O schakelaars moeten verwijzen naar een specifiek bestand; ze kunnen niet algemeen verwijzen naar een map of een URL op het hoogste niveau. De krullen commando rapporteert in dergelijke situaties een fout zonder lengte.

Voer ‘krul’ uit op de achtergrond

Standaard is de krullen opdracht toont een voortgangsbalk die aangeeft hoeveel van de overdracht er nog is en hoeveel gegevens zijn overgedragen. Als u alleen wilt dat de opdracht zonder voortgangsbalk wordt uitgevoerd, moet u deze in de stille modus uitvoeren. Voer het vervolgens uit als een achtergrondopdracht. Om een ​​commando stil uit te voeren, gebruik de -s schakelaar: krul -s -O

Gebruik het ampersand als volgt om het commando op de achtergrond uit te voeren: curl -s -O &

Het runnen van de krullen commando zonder de voortgangsbalk is meer gestroomlijnd, maar je weet niet hoe lang de overdracht zal duren of de geschatte tijd die het zou moeten voltooien.

Download meerdere URL’s met ‘krul’

Download in de eenvoudigste vorm meerdere URL’s tegelijk door ze in volgorde op te geven: curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html

Als u een groot aantal bestanden met een gemeenschappelijk naamgevingspatroon wilt downloaden, gebruikt u vierkante haken om een ​​bereik op te geven. Als u bijvoorbeeld afbeeldingsbestanden met het achtervoegsel 1 tot 100 wilt krijgen, geeft u het volgende op: curl -O http://www.mysite.com/images/image[1-100].jpg

Gebruik accolades om meerdere sites met vergelijkbare indelingen op te geven. Als u bijvoorbeeld de indexpagina’s voor zowel www.google.com als www.bing.com wilt downloaden, gebruikt u de volgende opdracht: curl -O http://www. {google,bing}.com

Je shell kan deze commando’s zo nodig herschrijven. Meer informatie over reguliere expressies voor relevante context.

curl voor twee sites

Voortgang weergeven

Standaard is de krullen commando retourneert de volgende informatie terwijl het een URL downloadt:

  • Totaal %: Percentage van de totale overdracht voltooid.
  • Totaal aantal bytes: Totale grootte van de overdracht in bytes.
  • Ontvangen/Overgedragen %: Percentage voltooide overdracht.
  • Ontvangen/overgedragen bytes: Aantal gedownloade bytes.
  • Gemiddelde downloadsnelheid: Downloadsnelheid in bytes per seconde.
  • Gemiddelde uploadsnelheid: Uploadsnelheid in bytes per seconde.
  • Totale tijd: geschatte tijd om de huidige bewerking te voltooien.
  • Tijd doorgebracht: Tijd verstreken sinds het begin van de overdracht.
  • Tijd over: Verwachte tijd om de overdracht te voltooien.
  • Huidige snelheid: Huidige overdrachtssnelheid in bytes per seconde.

Als u de voorkeur geeft aan een eenvoudige voortgangsbalk, specificeert u de -# schakel als volgt: curl -# -O

Omleidingen afhandelen

De krullen commando is slim omdat het omleidingen kan volgen. Het enige wat u hoeft te doen is de -L schakel als volgt: curl -OL

Bestanden downloaden van een FTP-server

De krullen commando verwerkt meer dan alleen HTTP-bestandsoverdrachten. Het kan overweg met FTP, GOPHER, SMB, HTTPS en andere formaten. Gebruik de volgende opdracht om bestanden van een FTP-server te downloaden: curl -u user:password -o

Als u de naam van een bestand opgeeft als onderdeel van de URL, wordt het bestand gedownload, maar als u de naam van een map opgeeft, wordt een maplijst geretourneerd. Gebruik krullen om bestanden naar een FTP-server te uploaden met behulp van de volgende opdracht: curl -u gebruiker:wachtwoord -T

De bestandsnamen en gebruiken dezelfde patroonovereenkomst als voor het downloaden van verschillende HTTP-bestanden.