Skip to content

curl-flagg forklart

curl-flaggene som brukes daglig, gruppert etter jobb: form forespørselen, sett headene, autentiser, vis en identitet, styr utdata, følg omdirigeringer, juster tilkoblingen og feilsøk. Hver rad kobler flagget med en realistisk kommando.

curl sender en HTTP-forespørsel og skriver ut responskroppen. Det meste av kraften ligger i flaggene: de velger metoden, fester headere og data, håndterer autentisering og avgjør hva som skrives ut. Langformen vises der den er tydeligst; kortformen er den enkelte bokstaven. Sett URL-er i anførselstegn slik at skallet ikke spiser spørringsstrengen.

Referansetabell · 54 oppføringer
54 of 54 rows
Utforming av forespørselen
Sett HTTP-metoden.curl -X POST https://api.test
Legg til et forespørselshode.curl -H "Accept: application/json" URL
Send en meldingskropp (setter POST og en standard innholdstype).curl -d "name=Ada" URL
Legg -d-verdier til som query-parametre på en GET.curl -G -d "q=hi" URL
Send multipart-skjemadata (filopplastinger).curl -F "file=@photo.png" URL
Send skjemadata med URL-koding aktivert.curl --data-urlencode "name=Ada Lovelace" URL
Last opp en fil med PUT.curl -T big.zip URL
Legg en opplasting til på den eksterne filen i stedet for å erstatte den.curl -a -T log.txt ftp://server.test/logs/log.txt
JSON og API-er
Send JSON med riktig innholdstype.curl -H "Content-Type: application/json" -d '{"a":1}' URL
Send innholdet i en fil som meldingskropp.curl -d @body.json URL
Send JSON uten å sette hodene manuelt (curl 7.82+).curl --json '{"a":1}' URL
Autentisering
HTTP Basic-autentisering med bruker og passord.curl -u ada:s3cr3t URL
Send et OAuth-bearer-token.curl --oauth2-bearer TOKEN URL
Send enhver tokenordning manuelt.curl -H "Authorization: Bearer TOKEN" URL
Vis frem et klientsertifikat og tilhørende nøkkel for gjensidig TLS.curl --cert client.pem --key key.pem URL
Verifiser serveren mot én CA-buntfil.curl --cacert ca.pem URL
Verifiser serveren mot en katalog med CA-er.curl --capath /etc/ssl/certs URL
Send forespørselen gjennom en proxy.curl -x http://proxy.test:8080 URL
Hopp over TLS-verifisering kun for proxy-hoppet.curl -x https://proxy.test:8443 --proxy-insecure URL
Krev TLS 1.3 som minimumsversjon.curl --tlsv1.3 URL
Identitet
Send en egendefinert User-Agent-streng.curl -A "Mozilla/5.0" URL
Send et Referer-hode.curl -e https://example.com/page URL
Send cookies med forespørselen.curl -b "session=abc123" URL
Lagre respons-cookies i en fil.curl -c cookies.txt URL
Utdata
Skriv meldingskroppen til en fil.curl -o page.html URL
Lagre meldingskroppen med det eksterne filnavnet.curl -O https://site/file.tgz
Skriv ut responshoder over meldingskroppen.curl -i URL
Hent kun hoder (sender HEAD).curl -I URL
Skjul fremdriftsmåleren og feil.curl -s URL
Skriv ut en formatstreng etter meldingskroppen (tidsbruk, status).curl -w "%{http_code}\n" -o /dev/null URL
Avslutt med kode ulik null ved HTTP-feil og hopp over feilkroppen.curl -f URL
Avslutt med kode ulik null ved HTTP-feil, men skriv fortsatt ut kroppen.curl --fail-with-body URL
Navngi den lagrede filen etter Content-Disposition-hodet.curl -OJ URL
Fortsett en avbrutt overføring der den stoppet.curl -C - -O URL
Vis en fremdriftslinje i stedet for standardmåleren.curl -# -O URL
Skriv ut feil selv i stille modus.curl -sS URL
Skriv responshodene til en fil.curl -D headers.txt URL
Be om en komprimert respons og dekod den.curl --compressed URL
Opprett manglende mapper i -o-stien.curl -o cache/api/data.json --create-dirs URL
Omdirigering og tilkobling
Følg 3xx-omdirigeringer.curl -L URL
Maks antall sekunder å vente på TCP-tilkoblingen.curl --connect-timeout 5 URL
Maks antall sekunder for hele forespørselen.curl --max-time 30 URL
Hopp over verifisering av TLS-sertifikatet.curl -k https://self-signed.test
Prøv på nytt ved midlertidige feil opptil N ganger.curl --retry 3 URL
Prøv på nytt ved enhver feil, ikke bare midlertidige.curl --retry 3 --retry-all-errors URL
Tving tilkoblingen over IPv4 eller IPv6.curl -4 URL
Koble en vert og port til en adresse, utenom DNS.curl --resolve api.test:443:127.0.0.1 https://api.test
Bind overføringen til et nettverksgrensesnitt eller en adresse.curl --interface eth0 URL
Overfør flere URL-er samtidig.curl -Z URL1 URL2
Bruk HTTP/2 eller HTTP/3 for overføringen.curl --http3 URL
Strøm meldingskroppen etter hvert som den ankommer, i stedet for å bufre.curl -N URL
Les flere flagg fra en konfigurasjonsfil.curl -K flags.cfg URL
Feilsøking
Skriv ut hele utvekslingen mellom forespørsel og respons.curl -v URL
Hex-dump alt som sendes og mottas.curl --trace - URL