728x90
* curl
curl은 URL로 데이터를 전송하기 위해 커맨드 라인이나 스크립트에서 사용되는 커맨드 라인 툴 및 라이브러리이다.
다음과 같이 사용한다.
curl [options] URLs
옵션 사용 예시
-o, --output <file>
명령의 결과를 지정한 파일명으로 쓸 수 있다. 파일의 이름을 지정하여 다운로드 받는다.
curl -o filename https://example.com
-O, --remote-name
파일 이름의 변경 없이, 서버의 파일과 동일한 이름으로 다운로드 받는다.
curl -O https://example.com/filename
curl vs wget
curl과 wget은 기능적으로 유사하나, curl이 wget보다 더 많은 프로토콜, 플랫폼 등을 지원하고 그에 비해 wget은 간단하고 recursive하게 작동한다.
※ wget의 recursive
원격 리소스에 있는 모든 참조된 항목, 페이지에 있는 모든 내용이나 FTP 디렉터리에 있는 모든 파일들을 그대로 다운로드 받을 수 있다.
기능적인 유사점
- FTP, HTTP(S)에서 컨텐츠를 다운로드 받을 수 있는 커맨드 라인 툴이다.
- HTTP POST request를 보낼 수 있다.
- HTTP 쿠키를 지원한다
- HSTS, HTTP 프록시를 지원한다.
- 유저의 interaction 없이도 작동하도록 설계되었다.
어느 것을 사용할 것인가?
wget은 curl이 제공하지 않는 (재귀적) 다운로드 기능이 있으며, 신뢰할 수 없는 연결에 대한 다운로드 재시도도 처리하므로 약간 더 효과적일 수 있다. 하지만 이 밖의 다른 모든 것들에 대해서는, curl이 더 적합한 도구일 것이다.
더 많은 차이점과 curl & wget에 대한 각 설명은 아래 링크를 참고.
728x90
'Dev > Linux' 카테고리의 다른 글
[Linux] Troubleshoot Slow Server (1) | 2022.09.09 |
---|---|
[Linux] Kernel (0) | 2022.09.05 |
[Linux] soft link와 hard link의 차이점 (0) | 2022.08.23 |
[Ansible] Ansible playbook example - 3 (0) | 2022.08.19 |
[Ansible] Ansible playbook example - 2 (0) | 2022.08.18 |
댓글