Linux에서 Curl 명령을 사용하는 방법에 대한 팁

이 기사에서는 Linux에서 Curl 명령을 사용하는 방법에 대한 팁을 설명했습니다.

컬 명령 지원 프로토콜 중 하나를 사용하거나 네트워크 서버에서 데이터를 전송한다. cURL은 libcurl을 사용하기 때문에 현재 HTTP,[10][14] HTTPS, SOAP 요청을 비롯한 다양한 일반 네트워크 프로토콜을 지원합니다.

컬 명령을 시작하고 배워봅시다.

1. curl 버전 보기

-V 또는 --version 옵션은 버전뿐만 아니라 현재 버전에서 지원되는 프로토콜 및 기능도 반환합니다.

$ curl --version

curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3

프로토콜: dict 파일 ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp

기능: AsynchDNS IDN IPv6 대용량 파일 GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets

2. 파일 다운로드

파일을 다운로드하려면 -O 또는 -o 옵션과 함께 curl을 사용할 수 있습니다. 전자는 원격 위치와 동일한 이름으로 현재 작업 디렉토리에 파일을 저장하지만 후자는 다른 파일 이름 및/또는 위치를 지정할 수 있습니다.

$ curl -O http://yourdomain.com/yourfile.tar.gz # Save as yourfile.tar.gz
$ curl -o newfile.tar.gz http://yourdomain.com/yourfile.tar.gz # Save as newfile.tar.gz

3. 중단된 다운로드 재개

어떤 이유로 다운로드가 중단된 경우(예: Ctrl + c 사용) 매우 쉽게 다시 시작할 수 있습니다. -C – (대시 C, 공백 대시)를 사용하면 curl이 중단된 부분부터 다운로드를 다시 시작하도록 지시합니다.

$ curl -C - -O http://yourdomain.com/yourfile.tar.gz

4. 여러 파일 다운로드

다음 명령을 사용하면 http://yoursite.com 및 http://mysite.com에서 각각 info.html 및 about.html을 한 번에 다운로드할 수 있습니다.

$ curl -O http://yoursite.com/info.html -O http://mysite.com/about.html

5. 파일에서 URL 다운로드

curl과 xargs를 결합하면 파일의 URL 목록에서 파일을 다운로드할 수 있습니다.

# xargs -n 1 curl -O <>

6. 인증 여부에 관계없이 프록시 사용

proxy.yourdomain.com의 포트 8080에서 수신 대기하는 프록시 서버 뒤에 있는 경우 수행하십시오.

# curl -x proxy.yourdomain.com:8080 -U user:password -O http://yourdomain.com/yourfile.tar.gz

프록시에 인증이 필요하지 않은 경우 -U user:password를 건너뛸 수 있습니다.

7. HTTP 헤더 쿼리

HTTP 헤더를 사용하면 원격 웹 서버가 실제 요청과 함께 자체에 대한 추가 정보를 보낼 수 있습니다. 이렇게 하면 요청이 처리되는 방법에 대한 세부 정보가 클라이언트에 제공됩니다.

웹 사이트에서 HTTP 헤더를 쿼리하려면 다음을 수행합니다.

# curl -I www.rootadminz.com

8. 매개변수로 POST 요청 만들기

다음 명령은 해당 값과 함께 firstName 및 lastName 매개변수를 https://yourdomain.com/info.php로 보냅니다.

# curl --data "firstName=John&lastName=Doe' https://yourdomain.com/info.php

이 팁을 사용하여 일반 HTML 양식의 동작을 시뮬레이션할 수 있습니다.

9. 인증 유무에 관계없이 FTP 서버에서 파일 다운로드

원격 FTP 서버가 ftp://yourftpserver에서 연결을 예상하는 경우 다음 명령은 현재 작업 디렉토리에서 yourfile.tar.gz를 다운로드합니다.

# curl -u username:password -O ftp://yourftpserver/yourfile.tar.gz

FTP 서버가 익명 로그인을 허용하는 경우 -u username:password를 건너뛸 수 있습니다.

10. 인증 유무에 관계없이 FTP 서버에 파일 업로드

curl을 사용하여 mylocalfile.tar.gz라는 로컬 파일을 ftp://yourftpserver에 업로드하려면 다음을 수행하십시오.

# curl -u username:password -T mylocalfile.tar.gz ftp://yourftpserver

11. 사용자 에이전트 지정

사용자 에이전트는 HTTP 요청과 함께 전송되는 정보의 일부입니다. 이것은 클라이언트가 요청을 수행하는 데 사용한 브라우저를 나타냅니다. 현재 curl 버전이 기본적으로 무엇을 사용하는지 살펴보고 나중에 "I am new web browser"로 변경해 보겠습니다.

# curl -I http://localhost --user-agent "I am a new web browser'

12. 웹사이트 쿠키 저장

https://www.cnn.com을 탐색할 때 어떤 쿠키가 컴퓨터에 다운로드되는지 확인하고 싶으십니까? 다음 명령을 사용하여 cnncookies.txt에 저장합니다. 그런 다음 cat 명령을 사용하여 파일을 볼 수 있습니다.

# curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O

13. 웹사이트 쿠키 보내기

동일한 사이트에 대한 후속 요청에서 마지막 팁에서 검색된 쿠키를 사용할 수 있습니다.

# curl --cookie cnncookies.txt https://www.cnn.com

14. 이름 확인 수정

웹 개발자이고 라이브로 푸시하기 전에 로컬 버전의 yourdomain.com을 테스트하려는 경우 다음과 같이 curl이 http://www.yourdomain.com을 로컬 호스트로 확인하도록 할 수 있습니다.

# curl --resolve www.yourdomain.com:80:localhost http://www.yourdomain.com/

따라서 http://www.yourdomain.com에 대한 쿼리는 DNS 또는 /etc/hosts 파일을 사용하는 대신 localhost에서 사이트를 요청하도록 curl에 지시합니다.

15. 다운로드 속도 제한

curl이 대역폭을 호스팅하는 것을 방지하기 위해 다음과 같이 다운로드 속도를 100KB/s로 제한할 수 있습니다.

# curl --limit-rate 100K http://yourdomain.com/yourfile.tar.gz -O

오늘은 Curl이 무엇인지, Linux에서 Curl 명령어를 사용하는 방법을 배웠습니다.


CentOS 7에서 CSF(ConfigServer Security & Firewall)를 설치하고 구성하는 방법

CentOS 7에서 CSF(ConfigServer Security & Firewall)를 설치하고 구성하는 방법

ConfigServer 보안 및 방화벽(줄여서 csf라고도 함)은 상태 저장 패킷 검사(SPI) 방화벽입니다. CentOS 7에서 CSF 설치 및 구성 배우기

CentOS에 R1Soft 백업 에이전트를 설치하는 방법

CentOS에 R1Soft 백업 에이전트를 설치하는 방법

CentOS에 R1Soft 백업 에이전트를 설치하고 구성하는 방법을 배웁니다. R1Soft Server Backup Manager는 서비스 제공자에게 유연하고 서버 친화적인 솔루션을 제공합니다.

CloudLinux LVE 제한을 수정하는 방법

CloudLinux LVE 제한을 수정하는 방법

이 기사에서는 CloudLinux LVE 제한을 수정하는 방법을 설명했습니다. 시작하겠습니다. CloudLinux LVE 제한은 LVE Manager를 사용하여 변경할 수 있습니다.

포트 Linux 서버의 SSH를 변경하는 방법

포트 Linux 서버의 SSH를 변경하는 방법

Linux 서버의 SSH 포트를 변경하려면 SSH를 통해 서버에 로그인하고 SSH 구성 파일을 수정해야 합니다.

CentOS에 Centova Cast를 설치하는 방법

CentOS에 Centova Cast를 설치하는 방법

Centova Cast는 인터넷 라디오 스트림을 위한 최고의 관리 플랫폼으로 스트리밍 호스팅 제공업체에 광범위한 통찰력과 제어 기능을 제공합니다.Centova Cast

메일 서버에서 메일 릴레이를 설정하는 방법

메일 서버에서 메일 릴레이를 설정하는 방법

다음 이메일 릴레이 설정을 사용하여 이메일 전송 문제를 해결할 수 있습니다.

Ubuntu 18.04에서 Apache, MariaDB, PHP 및 phpMyAdmin을 설치하는 방법

Ubuntu 18.04에서 Apache, MariaDB, PHP 및 phpMyAdmin을 설치하는 방법

Ubuntu 18.04 서버에 Apache MariaDB PHP 및 PHPMyAdmin을 설치하는 방법을 배웁니다. Apache, MySQL/MariaDB, PHP는 패키지로 구성되어 있습니다. 그것은 LAMP로 알려져 있습니다

Linux에서 기본 사용자 관리 배우기

Linux에서 기본 사용자 관리 배우기

Linux에서 사용자를 추가, 수정 또는 삭제하시겠습니까? 여기 당신을 위한 완벽한 기사가 있습니다.

Linux에서 기본 그룹 관리 배우기

Linux에서 기본 그룹 관리 배우기

Linux의 그룹 관리에 대해 자세히 알아보세요. Linux에서 그룹 추가, 그룹 수정 및 그룹 삭제, 구성원 추가 방법. 새 그룹을 만들고 groupadd 명령을 사용합니다.

CentOS 7에 Fail2ban 설치 방법 배우기

CentOS 7에 Fail2ban 설치 방법 배우기

Fail2ban은 SSH 연결을 보호하는 데 매우 유용합니다. 이제 centos7에 fail2ban을 설치 및 구성하고 서버에 보안 계층을 추가할 수 있습니다.