내 잡다한 노트
유닉스 계열 명령줄 : wget, curl 본문
자주 쓰이는 command-line tools and shell utilities에 대해 공부해보고 작성할 것임.
wget
World Wide Web get의 약자이다.
웹 서버로부터 콘텐츠를 다운로드하기 위한 소프트웨어 유틸리티이다.
HTTP, HTTPS, FTP 프로토콜을 지원하며, 재귀적 다운로드 기능이 있어서 함께 연결된 모든 리소스도 다운로드 할 수 있다. 그러니까 웹에 연결된 이미지나 파일 같은걸 다운로드 한다는것이다.
또한, POST 메소드를 할 수 있어서 웹사이트에 정보를 보낼수도 있다.
이것과 비슷한 기능을 하는 것이 curl 이다.
curl
wget과 같이 웹 서버로부터 콘텐츠를 다운로드하기 위한 도구이다.
주로 API와의 상호작용이나 웹 컨텐츠의 다운로드/업로드에 사용된다. 대부분의 운영체제에서 사용 가능하다.
위에 써놓은 wget의 기능들을 다 할 수 있다.
자세한건 차이점을 통해 살펴보자.
wget과 curl의 차이점
- wget은 재귀적 다운로드 기능이 있어서 웹사이트 전체를 다운로드하는데 유용하다.
curl은 데이터 전송에 초점이 맞춰져 있고, 다양한 프로토콜과 상호작용할 수 있다. API 테스트 및 데이터 전송에
주로 사용된다.
- 둘 다 여러 프로토콜을 지원하지만 curl이 더 다양한 프로토콜을 지원한다.
POP3, IMAP, SCP, TELNET 등등 다양하다.
- wget은 주로 명령 줄 도구로만 사용되지만,
curl은 libcurl이라는 라이브러리 형태로도 제공이 된다. 그래서 다른 프로그램에서 HTTP/FTP 등의 기능을
사용할 수 있게 해준다.
- wget은 단방향이다. 무슨 말이냐면 POST request만 된다는 것이다. response가 안된다...
반면에 curl은 양방향이다.
따라서, 별 다른 옵션 없이 다운로드만 하고 싶다면 wget이 좋고,
좀 복잡한 컨텐츠라면 curl이 좋을 것이다.
'DevOps > 리눅스' 카테고리의 다른 글
sudo apt update에서 404 Not Found 에러 (0) | 2023.11.03 |
---|---|
VirtualBox 실행시 0xc000007b 에러 (0) | 2023.11.03 |
리눅스 PAM (0) | 2023.09.02 |
리눅스 보안 방화벽에 관해 (1) | 2023.09.02 |
fork( ) 정의와 특징 (0) | 2023.04.08 |