Linux의 cURL 및 wget: 차이점은 무엇입니까?

Linux의 cURL 및 wget: 차이점은 무엇입니까?

Linux 사용자 그룹에게 파일을 다운로드하는 데 무엇을 사용하는지 묻는다면 어떤 사람은 wget하고 어떤 사람 은 이라고 대답할 것 cURL입니다. 차이점은 무엇이며 하나가 다른 것보다 낫습니까?

모든 것은 연결에서 시작되었습니다

정부 연구원들은 1960년대 초반에 다양한 네트워크를 함께 연결하기 시작하여 상호 연결된 네트워크가 탄생했습니다. 그러나 우리가 알고 있는 인터넷의 탄생은 TCP/IP 프로토콜이 구현된 1983년 1월 1일이었습니다. 누락된 링크였습니다. 이를 통해 서로 다른 컴퓨터와 네트워크가 공통 표준을 사용하여 통신할 수 있었습니다.

1991년  CERN  은 World Wide Web용 소프트웨어를 출시했으며 몇 년 동안 내부적으로 사용했습니다. 이 웹용 시각적 오버레이에 대한 관심은 즉각적이고 널리 퍼졌습니다. 1994년 말까지  10,000개의 웹 서버와 1,000만 명의 사용자가 있었습니다.

인터넷과 월드 와이드 웹이라는 두 가지 이정표는 연결의 매우 다른 측면을 나타냅니다. 그러나 그들은 또한 많은 동일한 기능을 공유합니다.

소통이란 바로 그런 것을 의미합니다. 서버와 같은 일부 원격 장치에 연결하고 있습니다. 그리고 당신이 필요하거나 원하는 무언가가 있기 때문에 당신은 그것에 연결합니다. 그러나 Linux 명령줄에서 이 원격으로 호스팅된 리소스를 로컬 시스템으로 가져오는 방법은 무엇입니까?

1996년에는 원격으로 호스팅된 리소스를 다운로드할 수 있는 두 가지 유틸리티가 등장했습니다. wget1월에 나온 cURL거랑 12월에 나온거. 이 두 가지 모두 Linux 명령줄에서 작동합니다. 둘 다 원격 서버에 연결하고 둘 다 데이터를 가져옵니다.

그러나 Linux가 동일한 작업을 수행하기 위해 두 개 이상의 도구를 제공하는 것은 일반적인 경우만이 아닙니다. 이러한 유틸리티는 목적과 전문 분야가 다릅니다. 문제는 어느 것을 언제 사용해야 할지 혼란스러울 정도로 비슷하다는 점이다.

두 명의 외과의사를 생각해 보십시오. 당신은 아마도 안과 의사가 당신에게 심장 우회 수술을 하는 것을 원하지 않으며 심장 외과의가 당신에게 백내장 수술을 하는 것을 원하지 않을 것입니다. 예, 둘 다 우수한 의료 전문가이지만 이것이 서로를 대체할 수 있다는 의미는 아닙니다.

wget및 에 대해서도 마찬가지입니다 cURL.

다른 목적, 다른 기능, 일부 중복

명령 의 문자 “w” wget는 목적을 나타냅니다. 주요 목적은 웹 페이지 또는 전체 웹사이트를 로드하는 것입니다. 해당 man페이지에서는 HTTP, HTTPS 및 FTP 프로토콜을 사용하여 인터넷에서 파일을 다운로드하기 위한 유틸리티로 설명합니다.

반대로 cURLSCP, SFTP 및 SMSB는 물론 HTTPS를 포함한 26개의 프로토콜과 함께 작동합니다. 해당 man페이지에는 서버로 또는 서버에서 데이터를 전송하는 도구라고 나와 있습니다. 웹사이트에서 작동하도록 특별히 설계되지 않았습니다. 지원되는 많은 인터넷 프로토콜을 사용하여 원격 서버와 통신하도록 설계되었습니다.

따라서 wget주로 웹 사이트 지향적이지만 cURL일반 바닐라 인터넷 수준에서 더 깊은 수준에서 작동합니다.

wget웹 페이지를 검색할 수 있으며 웹 서버의 전체 디렉토리 구조를 재귀적으로 탐색하여 전체 웹 사이트를 다운로드할 수 있습니다. 또한 검색된 페이지의 링크가 원격 웹 서버의 해당 페이지가 아닌 로컬 컴퓨터의 웹 페이지를 올바르게 가리키도록 설정할 수도 있습니다.

cURL원격 서버와 상호 작용할 수 있습니다. 파일을 다운로드하고 추출할 수 있습니다. cURL SOCKS4 및 SOCKS5 프록시 및 HTTPS에서 프록시로 작동합니다. GZIP, BROTLI 및 ZSTD 형식의 압축 파일 자동 압축 해제를 지원합니다. cURL또한 여러 전송을 동시에 다운로드할 수 있습니다.

wget둘 사이의 겹침은 cURL웹 페이지를 가져오고 FTP 서버를 사용할 수 있다는 것입니다.

man이것은 대략적인 메트릭이지만 페이지 길이를 보면 두 도구의 상대적 기능 세트에 대한 아이디어를 얻을 수 있습니다 . 테스트 머신에서 에 대한 매뉴얼 페이지 wget는 1433줄입니다. 페이지 mancURL무려 5296줄입니다.

wget 간단히 살펴보기

GNUwget 프로젝트 의 일부 이기 때문에 모든 Linux 배포판에 사전 설치되어 있어야 합니다. 특히 가장 일반적인 용도(웹 페이지 또는 파일 다운로드)에 사용하기 쉽습니다.

wget웹 페이지 또는 원격 파일의 URL과 함께 명령을 사용하기만 하면 됩니다.

wget https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc

파일이 추출되어 원래 이름으로 컴퓨터에 저장됩니다.

파일을 새 이름으로 저장하려면 -O(출력 문서) 옵션을 사용하십시오.

wget -O word-file-test.doc https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc

결과 파일은 우리가 선택한 이름으로 저장됩니다.

-O웹사이트를 검색할 때 이 옵션을 사용하지 마십시오 . 이렇게 하면 추출된 모든 파일이 하나로 추가됩니다.

전체 웹사이트를 가져오려면 -m(미러) 매개변수와 웹사이트 홈 페이지의 URL을 사용합니다. --page-requisites웹 페이지를 올바르게 표시하는 데 필요한 모든 지원 파일도 로드되었는지 확인하는 데 사용할 수도 있습니다 . 이 --convert-links설정은 결과 파일의 링크가 웹 사이트의 외부 위치가 아닌 로컬 컴퓨터의 올바른 대상을 가리키도록 구성합니다.

cURL에 대한 간략한 살펴보기

cURL독립 오픈 소스 프로젝트입니다. Manjaro 21 및 Fedora 36에 사전 설치되어 제공되지만 Ubuntu 21.04에 설치해야 합니다.

Ubuntu에 cURL을 설치하는 명령어입니다.

sudo apt install curl

with와 같은 파일을 로드하고 wget같은 이름으로 저장하려면 이 명령을 사용해야 합니다. (exit) 옵션 은 -o소문자로 cURL.

curl -o word-file-test.doc https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc

파일이 다운로드되었습니다. 다운로드하는 동안 ASCII 진행률 표시줄이 표시됩니다.

FTP 서버에 연결하고 파일을 업로드하려면 -u(user) 옵션을 사용하고 다음과 같이 사용자 이름/암호 쌍을 지정하십시오.

curl -o test.png -u demo:password ftp://test.rebex.net/pub/example/KeyGenerator.png

테스트 FTP 서버에서 파일을 다운로드하고 이름을 바꿉니다.

더 나은 것은 없다

“무엇을 하려는 겁니까?”라고 묻지 않고는 “어느 쪽을 사용해야 할까?”라고 대답하는 것은 불가능합니다.

무엇 을 wget, 무엇 cURL을 해야 하는지 이해하면 그들이 경쟁하지 않는다는 것을 이해하게 될 것입니다. 그들은 동일한 요구 사항을 충족하지 않으며 동일한 기능을 제공하려고 시도하지 않습니다.

웹 페이지와 웹사이트를 로드하는 것은 wget탁월함이 있는 곳입니다. 그게 당신이하고있는 일이라면 사용 wget하십시오. 다른 많은 프로토콜을 다운로드하거나 사용하는 것과 같은 다른 모든 경우에는 사용하십시오 cURL.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다