Konfigurer curl til at udskrive HTTP-statuskode i Linux: En guide

Hvordan kan curl på kommandolinjen i Linux konfigureres til at udskrive HTTP-statuskoden fra svaret (f.eks. 404, 403)?

For at konfigurere curl på kommandolinjen i Linux til at udskrive HTTP-statuskoden fra svaret, kan du bruge -w flaget med kommandoen curl -o /dev/null -s -w "%{http_code} " http://example.com eller -I flaget med kommandoen curl -I http://example.com 2>/dev/null | head -n 1 | cut -d ' ' -f 2.

Hvordan kan curl på kommandolinjen i Linux konfigureres til at udskrive HTTP-statuskoden fra svaret (f.eks. 404, 403)?

For at konfigurere curl på kommandolinjen i Linux til at udskrive HTTP-statuskoden fra svaret, kan du bruge følgende metoder:

  • Brug af -w (eller --write-out) flag:

    Du kan bruge -w flaget til at specificere, at du vil have HTTP-statuskoden udskrevet. Eksempel:

    curl -o /dev/null -s -w "%{http_code}
    " http://example.com

    Her er hvad de forskellige flag betyder:

    • -o /dev/null: Sender output til /dev/null for at undgå at udskrive hele HTML-indholdet.
    • -s: Silent mode, som undertrykker fremdriftslinjen.
    • -w "%{http_code} ": Skriver HTTP-statuskoden efterfulgt af en ny linje.
  • Brug af -I (eller --head) flag:

    Du kan også bruge -I flaget til kun at hente HTTP-headeren og derefter bruge grep til at filtrere statuslinjen. Eksempel:

    curl -I http://example.com 2>/dev/null | head -n 1 | cut -d ' ' -f 2

    Her er hvad de forskellige kommandoer betyder:

    • -I: Henter kun HTTP-headeren.
    • 2>/dev/null: Undertrykker fejlmeddelelser.
    • head -n 1: Vælger den første linje af outputtet (som indeholder statuslinjen).
    • cut -d ' ' -f 2: Skærer statuslinjen ved mellemrum og vælger det andet felt, som er HTTP-statuskoden.

Begge metoder er effektive til at udtrække HTTP-statuskoden fra et curl svar på kommandolinjen i Linux.