curl er et kraftig kommandolinjeverktøy for å kommunisere med en webserver via terminalen. Ofte blir det forvekslet med den populære wget-kommandoen, da begge kan laste opp og laste ned innhold til en server, og de fungerer på tvers av plattformer. Så, for å rydde opp i ting, er her forskjellene mellom wget og curl og noen populære curl-kommandoer du bør vite om å starte.
krøll mot wget
På overflaten kan både curl og wget sees på som et verktøy som kan be om og laste ned innhold fra webserverne. Men hvis du graver deg dypt ned, er det mye å løse ut. curl støtter mange flere protokoller som strekker seg fra HTTPS, SFTP til IMAP, POP3, etc, mens wget bare støtter HTTP, HTTPS og FTP.
En annen stor forskjell er at wget støtter rekursiv nedlasting mens krølling ikke gjør det. Så wget vil laste ned alt fra nettsiden til sider det er knyttet til mens krølling ikke vil. På den annen side er curl basert på libcurl-biblioteket som gir APIer. Derfor kan den enkelt brukes i kommandolinjeskript samt GUI-baserte apper. Du kan tenke på krølle som en strippet ned kommandolinjens nettleser som kan laste opp og laste ned innhold fra en webserver.
Installerer krøll på Windows
curl kommer forhåndsinstallert på Unix-baserte eller Unix-lignende operativsystemer, og kan derfor brukes direkte på macOS. Imidlertid kan den også brukes på ikke-Unix-systemer som Windows ved hjelp av et "libcurl" -bibliotek.
I Windows er alt vi trenger å gjøre å laste ned libcurl zip-filen og gjøre noen endringer for å gjøre den brukbar via ledeteksten. Først laster du ned libcurl-zip-filen for Windows 32-bit eller 64-bit tilsvarende. Etter at du har lastet ned filen, pakk ut innholdet i en mappe. For kontekst er følgende et skjermbilde av det ekstraherte innholdet i libcurl-mappen.
Gå til mappen i den ekstraherte mappen søppel mappen og kopier følgende filer - “Curl.exe” og “curl-ca-bundle”.
Lag en mappe som heter “krøll” i “C:” - stasjonen og lim inn begge de kopierte filene. Når du har gjort dette, kan du bruke curl-kommandoen direkte når du navigerer til "C: \ curl" -mappen i ledeteksten.
Alternativt, hvis du vil kjøre krøll direkte fra cmd, vil jeg anbefale å lage en miljøvariabel. For å gjøre det, gå over til Start-menyen og skriv “Rediger systemmiljøvariablene”Og klikk på det første søket.
I popup-vinduet Systemegenskaper klikker du på knappen Miljøvariabler nederst.
På skjermbildet miljøvariabel klikker du på Ny-knappen i øvre halvdel for å legge til en brukermiljøvariabel.
I det nye skjermbildet Brukervariabel legger du til følgende oppføring. Legg ut det, klikk på Ok og deretter Bruk for å lagre endringene.
Variabelnavn: krøll Variabel verdi: C: \ krøll
Når du er ferdig, klikker du på Ok under miljøvariabelmenyen for å lagre endringene. Legg ut dette, du bør kunne bruke krøllkommandoen direkte på ledeteksten. For å teste det, skriv inn følgende kommando
krøll - versjon
Alternativt kan du også aktivere WSL for Windows og bruk Ubuntu bash shell til å kjøre curl-kommandoer fra bash på Windows.
Beste krøllkommandoer og hvordan du bruker den
Før vi begynner med kommandoene, vær oppmerksom på at enkelt anførselstegn ikke fungerer i Windows-kommandolinjen. Du må konvertere dem til dobbelt anførselstegn. For bash shell, ville det fungere som vanlig med enkelt sitater også.
1. Bla gjennom HTML-kode
Det mest grunnleggende verktøyet for curl er å bla gjennom HTML-koden på en webside. For å gjøre det, suffikser curl-kommandoen med nettadressen til websiden.
krølle https://eksempel.com
Denne kommandoen viser utgangen på terminalen. Du kan også laste ned innholdet i filen ved å spesifisere “-O” -bryteren før URL-en. Dette lagrer filen på systemet ditt med samme eksterne filnavn. For eksempel, hvis HTML-filnavnet på serveren er "home.html", vil det også bli lagret lokalt som "home.html".
krølle -O http://example.com/home.html
Alternativt kan du lagre dataene med egendefinerte filnavn. For det, legg til kommandoen med en mindre bokstav “-o” etterfulgt av filnavnet.
krølle http://example.com/home.html -o sample-file.txt
Du kan også laste ned flere filer ved å spesifisere flere eksterne fil-URL-er.
2. Laste ned filer med krøll
I likhet med wget kan du laste ned filer ved hjelp av curl. Du kan bruke -o-bryteren og spesifisere filnavnet, ellers vil filen lagres med det eksterne filnavnet.
krølle -O http://eksempel.com/linux.iso
For eksempel vil følgende kommando laste ned den nyeste versjonen av Linux mynte fra webserveren.
krølle -O http://mirrors.gigenet.com/linuxmint/iso/stable/19.2/linuxmint-19.2-cinnamon-64bit.iso
Du kan også bruke “- #” eller “–progress-bar” for å vise fremdriften i form av hashes.
3. Gjenoppta mislykket nedlasting
Videre, hvis nedlastingen blir avbrutt, kan du fortsette ved å bruke “-C -” -bryteren. Kommandoen vil se ut som følger.
krølle -C http://eksempel.com/linux.iso
For eksempel vil følgende kommando gjenoppta nedlastingen fra det siste mislykkede punktet.
krølle -C - -O http://mirrors.gigenet.com/linuxmint/iso/stable/19.2/linuxmint-19.2-cinnamon-64bit.iso
4. IP-informasjon
Du kan bruke følgende krøllkommando for å få all nettverksinformasjon om en maskin
krølle ipinfo.io
Alternativt, hvis du vet IP-adressen og vil ha andre detaljer som stedskoordinater, by, tidssone osv., Kan du bruke følgende variant av kommandoen.
krølle ipinfo.io/14.141.173.170
5. Send e-post
Siden curl støtter SMTP, POP3-protokoll, kan du til og med bruke den til å sende e-post. Nedenfor er et eksempel på hvordan du sender en e-post via Gmail.
Bytt ut e-postadressen og passordet i følgende kommando tilsvarende.
curl --url "smtps: //smtp.gmail.com: 587" --ssl-reqd --mail-from "[email protected]" --mail-rcpt "[email protected]" - upload- fil "C: \ mail.txt" --bruker "[email protected]: passord"
Forsikre deg om at du slår på tilgang for mindre sikre apper for Google-kontoen
6. Ordbok
Diktprotokollen som tilbys av libcurl kan brukes til å enkelt finne betydningen av et ord. Kilden til betydningen er WordNet. Nedenfor er kommandoen om å gjøre det samme.
curl dict: //dict.org/d: engelsk-ord
7. POST-kommandoer
Du kan sende POST-forespørsler til en webserver ved hjelp av en curl-kommando. Syntaksen er som følger
krøll -X POST -F "navn = brukernavn" -F "passord = passord" http://www.example.com
POST-skjemadataene kan også sendes i form av en JSON-fil. Bruk følgende kommando for å gjøre det.
curl -H "Content-Type: application / json" https://www.example.com
8. Konverter filer
Siden curl støtter skjemadata i flere deler, kan du bruke den til å laste opp filer og til og med få dem konvertert umiddelbart. For eksempel vil jeg få denne HTML-filen konvertert til en PDF. Derfor vil jeg bruke Docverter API for å gjøre dette. Docverter API støtter flere filformater fra HTML, Markdown og kan konvertere dem til Docx, PDF, ePub, etc.
Alternativt kan du også bruke Google Drive API v3 til å konvertere Excel-regneark, dokumenter osv.
krølle "http://c.docverter.com/convert" -F from = html -F to = pdf -F input_files [] = @ your-file-name -o "output-file-name.pdf"
Avsluttende ord
curl brukes hovedsakelig i programmer for deling av data, filer, skjemaer. Bortsett fra den ovennevnte kommandoen, er det forskjellige andre APIer, kombinasjoner eller skallskript du kan bruke krølling med. Du kan vite mer om dette på GitHub repos eller Stack Overflow. For flere problemer eller spørsmål angående hvilken som helst krøllkommando, gi meg beskjed i kommentarene nedenfor.
Les også: 14 beste apper for å lære å kode (Android og iOS)