CURL 명령어 사용법 총정리

2024. 9. 2. 01:43

CURL 명령어 사용법 총정리합니다. CURL은 명령줄 또는 스크립트에서 데이터를 전송하는 데 사용되는 도구입니다. 주로 HTTP, HTTPS, FTP와 같은 다양한 프로토콜을 지원하며, 웹 요청을 만들고 응답을 받을 수 있게 해줍니다. CURL은 개발자와 시스템 관리자들이 API 호출, 파일 다운로드, 서버 간 데이터 전송 등을 자동화하는 데 많이 사용됩니다. 아래는 CURL 명령어의 사용법을 정리한 내용입니다.

CURL 명령어 사용법 총정리

 

CURL 명령어 사용법 총정리

CURL은 다양한 옵션과 기능을 제공하여 매우 유연하게 데이터를 전송하거나 수신할 수 있는 도구입니다. 명령어와 옵션을 잘 활용하면 복잡한 웹 요청이나 데이터 처리 작업을 쉽게 자동화할 수 있습니다. 

 

1. CURL 기본 사용법

CURL 명령어의 기본 구조는 다음과 같습니다

curl [옵션] [URL]

 

예를 들어, 웹페이지의 내용을 출력하고 싶다면 아래와 같이 사용하면 됩니다.

curl https://example.com

 

2. GET 요청

GET 요청은 서버로부터 데이터를 가져올 때 사용합니다. 기본적으로 CURL은 GET 요청을 수행합니다.

curl https://api.example.com/data

 

3. POST 요청

POST 요청은 서버에 데이터를 제출할 때 사용합니다. 주로 폼 데이터나 JSON 데이터를 전송할 때 사용됩니다.

  • 폼 데이터 전송
curl -X POST -d "name=John&age=30" https://api.example.com/submit
  • JSON 데이터 전송
curl -X POST -H "Content-Type: application/json" -d '{"name":"John", "age":30}' https://api.example.com/submit

 

4. PUT 요청

PUT 요청은 서버의 리소스를 업데이트할 때 사용됩니다.

 

curl -X PUT -H "Content-Type: application/json" -d '{"name":"John", "age":31}' https://api.example.com/update

 

5. DELETE 요청

DELETE 요청은 서버의 리소스를 삭제할 때 사용됩니다.\

curl -X DELETE https://api.example.com/delete/123

 

6. 헤더 설정

서버에 요청을 보낼 때 추가적인 헤더를 포함할 수 있습니다.

curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/protected

 

여러 헤더를 설정할 수도 있습니다:

curl -H "Accept: application/json" -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/protected

 

7. 파일 다운로드

CURL을 사용하여 파일을 다운로드할 수 있습니다.

curl -O https://example.com/file.zip

 

또는 다른이름으로 저장하고 싶을 때:

curl -o myfile.zip https://example.com/file.zip

 

8. 파일 업로드

파일을 업로드할 때는 -F 옵션을 사용합니다.

curl -F "file=@/path/to/file.txt" https://api.example.com/upload

 

9. 응답 헤더 보기

서버로부터의 응답 헤더를 보기 위해 -I 옵션을 사용합니다.

curl -I https://example.com

 

10. 응답 저장

응답 데이터를 파일로 저장할 때는 -o 옵션을 사용합니다.

curl -o response.txt https://api.example.com/data

 

11. 인증 사용

CURL로 인증이 필요한 요청을 할 때:

  • Basic 인증
curl -u username:password https://api.example.com/protected

 

  • Bearer 토큰 인증
curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/protected

 

12. 프록시 사용

프록시를 통해 요청을 보내려면 -x 옵션을 사용합니다.

curl -x http://proxy.example.com:8080 https://api.example.com/data

 

13. 상세한 요청 정보 보기

요청과 응답에 대한 상세한 정보를 보려면 -v 옵션을 사용합니다.

curl -v https://example.com

 

14. 쿠키 사용

쿠키를 사용해 요청을 보내려면:

  • 쿠키 저장
curl -c cookies.txt https://example.com

 

  • 쿠키 전송
curl -b cookies.txt https://example.com

 

15. 타임아웃 설정

요청에 타임아웃을 설정하려면 --connect-timeout 또는 -m 옵션을 사용합니다.

curl --connect-timeout 10 https://example.com

 

16. SSL 인증서 무시

SSL 인증서를 무시하고 요청을 보낼 때:

curl -k https://self-signed.badssl.com/

 

17. 여러 URL 요청

한 번에 여러 URL에 요청을 보내려면, 각 URL을 공백으로 구분합니다.

curl https://example.com https://example.org

 

18. 명령어 출력 제한

CURL의 출력 결과를 제한하려면 -s 옵션을 사용하여 "조용한 모드"를 활성화할 수 있습니다.

curl -s https://example.com

 

19. 압축된 응답 처리

서버가 압축된 데이터를 응답할 경우, --compressed 옵션을 사용하면 CURL이 자동으로 압축을 풀어줍니다.

curl --compressed https://example.com

 

20. 반복 요청

CURL을 스크립트 내에서 반복적으로 실행하여 API의 성능 테스트나 특정 요청을 여러 번 보내야 할 때:

for i in {1..10}; do curl https://example.com; done

 

 

이상입니다.

 

[다른글]

https://www.ihee.com/470

 

jar파일 자바 프로그램 실행 방법 2가지

마인크래프트에 쉐이더를 적용하기 위해 옵티파인 프로그램을 다운로드하였는데. jar 파일로 된 자바 프로그램이었다. 그래서 내 PC에 자바가 설치되어 있어서 당연히 실행될 줄 알고 마우스 더

www.ihee.com