curl 명령어는 URL을 통해 데이터를 전송하거나 받아올 때 사용한다. 주로 웹에서 HTTP 요청을 보내고 응답을 받는 데 사용되며, 다양한 프로토콜(HTTP, HTTPS, FTP, SFTP, SCP, LDAP)을 지원한다.
# curl 기본 문법 curl [옵션] [URL] # curl 옵션 list -X : 요청 메서드 지정 (GET, POST, PUT, DELETE 등) -d : POST 요청 -o : 출력 파일 지정 -O : URL에서 파일을 다운로드하여 저장(원본 이름으로 저장) -I : HTTP 응답 헤더만 출력 -u : 사용자 인증 -H : HTTP 헤더 추가 -k : SSL 인증서 오류 무시 -L : 리다이렉션 자동으로 따르기 -v : 요청 및 응답에 대한 자세한 정보 출력# GET 요청 보내기 curl https://naver.com# POST 요청 보내기 curl -X POST -d "username=admin&password=secret" http://example.com/login# 파일 설치 curl -O https://dlcdn.apache.org/spark/spark-3.4.1/spark-3.4.1-bin-hadoop3.tgz# 헤더 부분만 GET 요청 curl -I https://naver.com
wget 명령어는 인터넷에서 파일을 다운로드 할 수 있게 해주는 기능이 있으며, 파일 다운로드에 있어 curl 명령어 보다 특화된 기능이 몇 가지 있다.
wget 명령어는 HTTP, HTTPS, FTP 등 다양한 프로토콜을 지원한다.
파일 다운로드가 중간에 중단되어도 중단된 부분부터 다시 다운로드가 가능하다.
curl 명령어는 기본적으로 파일 다운로드가 중간에 중단되면 처음부터 다시 다운로드 시작한다.백그라운드에서 파일을 다운받을 수 있기 때문에 터미널을 점유하지 않고도 장시간 다운로드 받을 수 있다.
# wget 기본 문법 wget [옵션] [URL]# wget 옵션 list -O <지정 파일명> : 지정한 파일명으로 파일 다운로드 -r : 디렉토리 및 하위 파일을 재귀적으로 다운로드 -np : 상위 디렉토리로 올라가지 못하게 방지 -l <재귀 깊이> : 최대 재귀 깊이 설정 -c : 다운로드가 중단된 파일 이어 받기 -b : 백그라운드에서 파일 다운로드# 파일 다운로드 wget https://dlcdn.apache.org/spark/spark-3.4.1/spark-3.4.1-bin-hadoop3.tgz# 특정 파일명으로 파일 다운로드 wget -O spark.tgz https://dlcdn.apache.org/spark/spark-3.4.1/spark-3.4.1-bin-hadoop3.tgz# 재귀적 파일 다운로드 # /directory 에 포함된 모든 파일 다운로드 wget -r http://example.com/directory/# 중단된 다운로드 파일 재설치 wget -c http://example.com/file.zip# 백그라운드에서 파일 설치 wget -b http://example.com/file.zip