curl https://example.com | 단순 GET 요청 |
curl -o file.html https://example.com | 파일로 출력 저장 |
curl -O https://example.com/file.zip | 원격 파일명으로 저장 |
curl -L https://example.com | 리다이렉트 따라가기 |
curl -I https://example.com | 헤더만 가져오기 (HEAD) |
curl -i https://example.com | 출력에 헤더 포함 |
curl -v https://example.com | 상세 출력 |
curl -s https://example.com | 무음 모드 |
curl -sS https://example.com | 무음이지만 오류 표시 |
curl -X POST https://example.com | 단순 POST |
curl -d "data" https://example.com | 데이터와 함께 POST |
curl -d "name=value&foo=bar" https://example.com | 폼 데이터 |
curl -d @file.txt https://example.com | 파일에서 POST 데이터 |
curl --data-urlencode "q=hello world" https://example.com | URL 인코딩 데이터 |
curl -X PUT -d "data" https://example.com | PUT 요청 |
curl -X DELETE https://example.com/item/1 | DELETE 요청 |
curl -X PATCH -d "data" https://example.com | PATCH 요청 |
curl -X OPTIONS https://example.com | OPTIONS 요청 |
curl -H "Content-Type: application/json" https://example.com | 콘텐츠 타입 설정 |
curl -H "Accept: application/json" https://example.com | Accept 헤더 설정 |
curl -H "X-Custom: value" https://example.com | 커스텀 헤더 |
curl -H "Header1: val1" -H "Header2: val2" https://example.com | 여러 헤더 |
curl -A "Mozilla/5.0" https://example.com | User-Agent 설정 |
curl -e "https://referrer.com" https://example.com | Referer 설정 |
curl -u user:pass https://example.com | 기본 인증 |
curl -u user https://example.com | 기본 인증 (암호 입력) |
curl -H "Authorization: Bearer TOKEN" https://example.com | Bearer 토큰 |
curl --oauth2-bearer TOKEN https://example.com | OAuth2 bearer |
curl --digest -u user:pass https://example.com | 다이제스트 인증 |
curl --ntlm -u user:pass https://example.com | NTLM 인증 |
curl -n https://example.com | 인증에 .netrc 사용 |
curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' https://api.example.com | JSON POST |
curl -X PUT -H "Content-Type: application/json" -d @data.json https://api.example.com | 파일에서 JSON PUT |
curl https://api.example.com | jq . | jq로 JSON 포맷 |
curl -s https://api.example.com | jq '.data[]' | JSON 필드 추출 |
curl "https://api.example.com?page=1&limit=10" | 쿼리 파라미터 |
curl -G -d "page=1" -d "limit=10" https://api.example.com | 쿼리 문자열 구성 |
curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer TOKEN" \
-d '{"title":"Test"}' \
https://api.example.com/posts | 전체 API 호출 |
curl -F "file=@photo.jpg" https://example.com/upload | 파일 업로드 |
curl -F "file=@photo.jpg;type=image/jpeg" https://example.com/upload | MIME 타입과 함께 업로드 |
curl -F "file=@photo.jpg" -F "name=value" https://example.com | 폼 필드와 파일 |
curl -F "files[]=@file1.txt" -F "files[]=@file2.txt" https://example.com | 여러 파일 |
curl -F "file=@-" https://example.com < file.txt | stdin에서 업로드 |
curl -O https://example.com/file.zip | 원본 이름으로 다운로드 |
curl -o custom.zip https://example.com/file.zip | 커스텀 이름으로 다운로드 |
curl -C - -O https://example.com/large.zip | 다운로드 재개 |
curl -# -O https://example.com/file.zip | 진행률 표시 |
curl --limit-rate 1M -O https://example.com/file.zip | 다운로드 속도 제한 |
curl -O https://example.com/file[1-10].jpg | 파일 범위 다운로드 |
curl -b "name=value" https://example.com | 쿠키 전송 |
curl -b cookies.txt https://example.com | 파일에서 쿠키 전송 |
curl -c cookies.txt https://example.com | 파일에 쿠키 저장 |
curl -b cookies.txt -c cookies.txt https://example.com | 쿠키 읽기 및 업데이트 |
curl -b "" https://example.com | 쿠키 엔진 활성화 |
curl -c session.txt -d "user=admin&pass=secret" https://example.com/login | 로그인 및 세션 저장 |
curl -b session.txt https://example.com/dashboard | 세션으로 접근 |
curl -k https://example.com | SSL 검증 건너뛰기 |
curl --cacert ca.crt https://example.com | 커스텀 CA 인증서 사용 |
curl --cert client.crt --key client.key https://example.com | 클라이언트 인증서 |
curl --tlsv1.2 https://example.com | TLS 1.2 강제 |
curl --tlsv1.3 https://example.com | TLS 1.3 강제 |
curl -w "%{ssl_verify_result}" https://example.com | SSL 검증 결과 표시 |
curl -x http://proxy:8080 https://example.com | HTTP 프록시 |
curl -x socks5://proxy:1080 https://example.com | SOCKS5 프록시 |
curl -U user:pass -x http://proxy:8080 https://example.com | 인증이 있는 프록시 |
curl --noproxy "localhost,*.local" https://example.com | 프록시 우회 |
export http_proxy=http://proxy:8080 | 프록시 환경 변수 설정 |
curl -w "Time: %{time_total}s\n" https://example.com | 요청 시간 표시 |
curl -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nTTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n" https://example.com | 상세 타이밍 |
curl -w "%{http_code}" -o /dev/null -s https://example.com | 상태 코드만 가져오기 |
curl -w "%{size_download} bytes" https://example.com | 다운로드 크기 표시 |
curl --trace trace.log https://example.com | 파일로 전체 추적 |
curl --trace-ascii - https://example.com | stdout으로 ASCII 추적 |
curl --connect-timeout 5 https://example.com | 연결 타임아웃 |
curl -m 30 https://example.com | 최대 시간 (전체) |
curl --retry 3 https://example.com | 실패 시 재시도 |
curl --retry 3 --retry-delay 5 https://example.com | 지연과 함께 재시도 |
curl --retry-all-errors https://example.com | 모든 오류 재시도 |
curl --compressed https://example.com | 압축 요청 |
curl --http2 https://example.com | HTTP/2 사용 |
curl --http3 https://example.com | HTTP/3 사용 |
curl --resolve example.com:443:127.0.0.1 https://example.com | DNS 재정의 |
curl -4 https://example.com | IPv4 강제 |
curl -6 https://example.com | IPv6 강제 |