김 컴퓨터


curl (Client URL)

curl은 다양한 프로토콜(HTTP, HTTPS, FTP 등)을 사용하여 서버와 데이터를 송수신하는 명령줄 도구입니다. 웹 페이지의 소스를 가져오거나, 파일을 다운로드하고, 특히 REST API를 호출하여 데이터를 주고받을 때 개발자들이 가장 많이 사용하는 도구입니다.

[Image of Linux curl command sending a request to a server and receiving a response]


1. 기본 사용법

curl [옵션] [URL]

2. 주요 옵션

옵션 이름 설명
-O remote-name 파일을 서버의 파일 이름 그대로 로컬에 저장합니다. (대문자 O)
-o [파일명] output 다운로드한 파일의 이름을 지정하여 저장합니다. (소문자 o)
-L location URL이 변경(Redirection)되었을 경우, 바뀐 주소로 자동 이동합니다.
-I head 본문 제외, 서버의 헤더(Header) 정보만 가져옵니다. (상태 코드 확인용)
-X [메서드] request HTTP 메서드(GET, POST, PUT, DELETE 등)를 지정합니다.
-H [헤더] header 요청 시 사용자 정의 헤더를 추가합니다. (예: 인증 토큰)

3. 실무 활용 예시

① 웹 페이지 소스 보기

curl https://www.google.com

② 파일 다운로드하기

curl -O https://example.com/files/data.zip

③ 서버 응답 상태 코드만 확인하기 (정상 200 등)

curl -I https://www.github.com

④ REST API에 JSON 데이터 전송하기 (POST)

curl -X POST -H "Content-Type: application/json" -d '{"name":"kim", "age":20}' https://api.example.com/users

4. [팁] curl vs wget