hyperskill - Getting data from net 영어 원문

모든 컴퓨터 유저들에 대한 공통적인 임무 중 하나는 웹으로부터 데이터를 가져오는 것 입니다.

아마 이미, 비디오, 심지어 몇 가지 소프트웨어를 다운로드 하고 싶을 겁니다.

당신이 이를 웹 브라우저에서 수행 할 수 있는 반면에,

또한 명령어로 직접적으로 모든 종류의 파일을 다운로드하는 것이 전적으로 가능합니다.

몇 가지 경우에, 심지어는 웹 브라우저로 다운로드 하는 것 보다,

명령어로 다운로드 하는 방식이 더 빨라서 선호되기도 합니다.

이번 주제에서는, 다운로드 라는 목적에 대해 두 가지 유명한 유틸리티를 실제로 사용 해 볼 겁니다 :

wget and curl.


Wget


인터넷으로부터 파일을 가져오는 데 가장 흔하게 사용되는 도구 중 하나는 wget 입니다.

wget은 대부분의 리눅스 배포판(ex - 칼리 리눅스 등)에 미리 설치되어 있는 작운 도구입니다.

넷으로부터 파일을 가져오기 위해서는 그저 당신이 필요한 URL과 함꼐 명령어를 수행하기만 하면 됩니다.

그리고 wget은 당신의 현재 디렉토리에 파일을 다운로드합니다 :

wget https://www.example.com/

wget 명령어는 당신의 요청을 커스텀(사용자화)하기 위해 다양한 부가 기능을 가지고 있습니다.

예를 들어, 만약 당신이 첫 번째 시도가 성공적이지 않다고 의심된다면,

당신은 유틸리티가 리소스에 접근해야 하는 횟수를 설정 할 수 있습니다 :

wget --tries=5 https://www.example.com/

또 다른 유용한 기능은 파일을 저장하고 싶은 경로를 선택하는 기능입니다.

당신은 이러한 것을 -O 옵션, 혹은 --output-document 플래그로 수행 할 수 있습니다 :

wget -O /tmp/index.html https://www.example.com/

만약 당신이 wget 더 자세한 자침을 필요로 한다면,

우리는 man wget(man 명령어로 자세한 지침을 터미널에서 보기) 을 쳐서 메뉴얼을 확인하기를 추천합니다.

만약 당신이 특정 명령어를 기억하지 못하거나, 만약 당신이 그저 유틸리티를 사용하는 것으로 시작했다면,

몇 가지 중요한 정보를 얻기 위해 통합 도움 기능(man) 을 사용 할 수 있습니다.

이를 실제로 사용해서, 밑의 내용을 확인 해 봅시다 :

wget --help

GNU Wget 1.21.1, a non-interactive network retriever.
Usage: wget [OPTION]... [URL]...
...

## macOS 는 따로 다운로드 하지 않아서 그런지 아예 존재하지 않음.

## 리눅스에서 간단하게 사용이 가능한듯

위의 리스트는 wget의 현재 버전과 사용에 대해서만 보여 주지 않으므로,

wget 명령어에서 사용 될 수 있는 모든 명령어와 옵션들을 보여줍니다.


Curl


파일들과 웹 페이지와 작업 할 수 있는 또 다른 도구는 curl 입니다.

curlwget 명령어 간의 차이점 중에 눈에 띄는 하나는,

curl 명령어는 파일 업로드가 가능하다는 것입니다.


만약 당신의 시스템에 curl 이 설치되어 있는지 확인하려면,

밑의 콘솔 명령어를 사용하세요 :

curl --version

만약 curl 이 설치되어있다면, 버전 넘버와 추가적인 정보를 얻을 것이며,

설치되어 있지 않다면, 에러가 뜰 겁니다.

설치되어있지 않은 경우, 당신의 패키지 매니저에 curl 을 다운로드해야 합니다.


curl 로 페이지들을 가져오기 위해, 그저 소스 URL 을 명령어로 사용 하면 됩니다 :

curl https://www.example.com/

만약 당신이 파일에 페이지를 저장하고 싶다면,

-o 플래그 이후에 저장 할 경로를 설정하면 됩니다 :

$ curl --retry 3 https://www.example.com
<!doctype html>
<html>
<head>
    <title>Example Domain</title>

    <meta charset="utf-8" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <style type="text/css">
    body {
  ....
  }
  ...
<html>

당연히도, 당신이 사용 할 수 있는 더 많은 플래그들과 옵션들이 있습니다.

curl 명령어에서 가장 흔하게 사용되는 옵션의 리스트를 얻기 위해서,

빌트인 된 help 를 사용 할 수 있습니다.

curl --help

대부분의 플래그들과 옵션들은 업로드와 다운로드 둘 다에 대해 작동됩니다.

만약 당신이 curl 명령어에 대해 더 자세한 정보를 얻고, 이 명령어가 어떻게 작동되는지 알기 위해,

당신은 curl 메뉴얼 페이지를 사용할 수 있습니다 : $ man curl


pros and cons of wget and curl - wget, curl 장점 단점


당신에게 하나의 질문이 떠오를 텐데,

왜 명령어를 사용하여 파일 혹은 패키지를 다운로드하고 싶어 하는가?

여기엔 이를 사용하며 여러 가지 장점과 단점이 있습니다.

가장 주목 할 만한 장점들은 :

  • 다른 것으로는 불가능한, 몇 가지 꽤 발전된 기능들에 접근 할 수 있습니다.
  • wget 그리고 curl 으로 checksum(체크섬) 을 검증하여 파일 완전성과 신뢰성을 확인 할 수 있습니다.
  • 당신이 기다릴 시간을 자동으로 설정 할 수 있으며, 요청을 몇 번 더 다시하고 싶은지 설정할 수 있습니다.

그리고 밑의 리스트는 curlwget 도구를 사용함으로서 오는 단점입니다 :

  • 이 명령어들은 당신이 파일을 다운로드하고 싶어하는 URL 을 이미 알고 있음을 필요로 합니다.
  • 이 명령어들을 잘 사용하기 위해서 연습 시간을 필요로 합니다.

이러한 도구들을 구동시킬 수 있는 많은 옵션들이 있지만,

당신이 어떤 방식을 선택 할 지, 어떤 것이 더 가치있는지는 당신에게 달려 있습니다.


Conclusion - 결론


위의 내용들은 curl, wget 의 기초에 대한 모든 것들입니다.

이 두 명령어들은 인터넷에서 파일을 가져오기 위한 가장 흔하게 사용되는 도구입니다.

대부분의 경우 파일을 가져온다는 같은 목표에서 브라우저로 이러한 목표를 성취할 수 있지만,

이러한 임무들에 대해 명령어를 사용하는 것이 몇 가지 장점이 있습니다.


이번 주제에서는 오로지 curl, wget 에 대한 것을 간단히 소개했습니다.

이제 당신이 알아야 하는 것은 :

  • 명령어로 파일을 다운로드 하는 방법
  • 옵션과 플래그로 당신의 요청을 커스터마이징(사용자화) 하는 방법
  • 이러한 도구들의 적절한 사용법을 얻는 방법


words to remember


whilst : 하는 동안, 하지만, 그런데

suspect : 의심하다

noticeable : 눈에 띄는, 남의 눈을 끄는, 남의 이목을 끄는

notable : 주목할 만한, 유명한, 명사

trustworthiness : 신뢰성

verify : 확인하다, 증명하다, 입증하다, 실증하다