curl과 wget의 차이점은 무엇입니까?


258

나는 차이를 알고 싶어 생각 curl하고 wget. 둘 다 파일과 문서를 얻는 데 사용되지만 그 차이점은 무엇입니까?

왜 두 개의 다른 프로그램이 있습니까?


5
주요 차이점은 wget을 사용하여 다운로드하는 반면 curl은 특정 프로토콜을 사용하여 통신을 테스트하는 데 사용됩니다.
Pithikos


답변:


265

주요 차이점은 다음과 같습니다.

  • wget의 주요 장점 curl은 재귀 적으로 다운로드하는 기능입니다.
  • wget명령 행 전용입니다. lib 또는 아무것도 없지만, curl의 기능은 libcurl에 의해 제공됩니다.
  • curl지원 FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, FILE, POP3, IMAP, SMTP, RTMPRTSP. wget지원 HTTP, HTTPSFTP.
  • curl보다 많은 플랫폼에서 빌드하고 실행합니다 wget.
  • wget무료 소프트웨어 카피 레프트 라이센스 (GNU GPL)에 따라 배포됩니다. curl무료 소프트웨어 허가 라이센스 (MIT 파생물)에 따라 배포됩니다.
  • curl업로드 및 전송 기능을 제공합니다. wget일반 HTTP POST 지원 만 제공합니다.

다음 링크에서 자세한 내용을 볼 수 있습니다.

컬 대 Wget


1
고마워, 이것은 내가 몇 시간 동안 궁금했던 것입니다. 나는 wget을 사용하여 사이트에서 재귀 거미를 만들었습니다. 실제로는 하나의 코어에서 100 % CPU로 실행되고 있습니다. 내가 듣고있는 새로운 멀티 코어 기능을 수행하는 데 더 좋은 것이 있기를 바랐습니다.
브라이언 토핑

1
wget이 답변에서 제외 된 것 중 하나 는 http 미러링 (또는 '거미') 능력입니다. curl웹 사이트를 미러링하는 데 사용되는 것은 아닙니다.
jsbillings

ftp를 지원하는 별칭은 무엇입니까?
mckenzm

1
"모든 저작권은 FSF에 할당됩니다"라는 말은 의미가 없습니다. "조직을 전혀 양육하지 않아도 완전히 독립적이며 독립적입니다." cURL의 저자가 저작권의 소유자라는 것은 명백합니다. wget의 저자가 저작권 소유자임을 분명히 알 수 있습니다. 그러나 자유 소프트웨어에서와 같이 둘 다 자유입니다. 대신 wget은 카피 레프트 라이센스하에 있고 cURL은 허용 라이센스하에 있다고 말할 수 있습니다.
Valerio Bozz

1
@ValerioBozz : 사실은 아닙니다. curl과 wget은 모두 커뮤니티 프로젝트입니다. curl을 사용하면 각 사람이 자신이 제공 한 코드에 대한 저작권을 보유합니다. Wget을 사용하면 대부분의 다른 GNU 프로그램과 마찬가지로 다양한 작성자가 FSF에 대한 저작권을 제공합니다. 즉, 더 이상 해당 코드를 소유하지 않습니다. 이를 통해 FSF는 카피 레프트를 엄격하게 시행하고 필요한 경우 코드를 재 라이센스 할 수 있습니다.
darnir

57

몇 마디로 :

  • wget 서버에서 파일을 다운로드하는 도구입니다
  • curl 서버와 요청 / 응답을 교환 할 수있는 도구입니다

wget

Wget을 사용하면 HTTP/ HTTPS또는 FTP서버 에서 파일을 다운로드 할 수 있습니다 . 링크를 제공하면 링크가 가리키는 파일을 자동으로 다운로드합니다. 요청을 자동으로 빌드합니다.

wget과 달리 컬을 사용 하면 원하는대로 요청작성할 수 있습니다 . 이것은 사용자에게 많은 자유를주고 놀라운 디버깅 도구를 만듭니다. 이 둘의 또 다른 주요 차이점은 지원되는 수많은 프로토콜입니다. 컬을 지원 FTP, FTPS, Gopher, HTTP, HTTPS, SCP, SFTP, TFTP, Telnet, DICT, LDAP, LDAPS, IMAP, POP3, SMTP, RTSPURI. 이 두 가지 핵심 사항을 결합하면 프로토콜을 테스트하고 서버 구성을 테스트하는 놀라운 도구가 있습니다.

많은 사람들이 말했듯이 curl이있는 파일을 다운로드 할 수 있습니다. 그러나 wget이 지원하지 않는 프로토콜을 사용하는 서버에서 파일을 다운로드하려는 경우에만 유용합니다.


2
실제로 wget는 리디렉션을 따르고 달리 응답을 저장합니다 curl. 둘 다 기본 동작과 반대되는 결과를 얻 wget -qO - http://google.co.uk/ 거나curl http://google.co.uk/ > index.html
Matt

1
@mtm curl http://google.co.uk/ > index.html은 내장 기능을 사용하지 않습니다. 어쨌든 주요 차이점은 각 도구 의 목적 입니다. 도구가 진화하고 여러 번 그들의 초기 궤도에서 벗어나는 것을 부정하지는 않습니다.
Pithikos

1
@mtm curl http://google.co.uk -o index.html은을 사용하여 쉘 출력 리디렉션 대신 curl의 내부를 사용 >합니다.
Petrus Repo

19

실제로 주요 차이점은 curl라이브러리 ( libcurl) 를 포함 하고 해당 라이브러리가 다른 응용 프로그램에서 널리 사용된다는 것입니다. wget독립형입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.