A páxina de manual para o comando "curl" ten a seguinte descrición:
Curl é unha ferramenta para transferir datos de ou a un servidor, usando un dos protocolos soportados (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET e TFTP). O comando está deseñado para funcionar sen a interacción do usuario.
Basicamente, podes usar curl para descargar contido de internet. Por exemplo, se executou o comando Curl co enderezo web establecido en http://linux.about.com/cs/linux101/g/curl.htm, a páxina vinculada baixarase.
Por defecto, a saída será para a liña de comandos pero tamén pode especificar un nome de ficheiro para gardar o ficheiro. A URL especificada pode apuntar ao dominio de nivel superior dun sitio como www. ou pode apuntar a páxinas individuais no sitio.
Podes usar curl para descargar páxinas físicas, imaxes, documentos e ficheiros. Por exemplo, para descargar a última versión de Ubuntu Linux pode simplemente executar o seguinte comando:
curl -o ubuntu.iso http://releases.ubuntu.com/16.04.1/ubuntu-16.04.1-desktop-amd64.iso
Debo usar Curl ou Wget?
A pregunta "debo usar curl ou wget?" é unha pregunta que me preguntei varias veces no pasado e a resposta é que depende do que estás a conseguir.
O comando wget úsase para descargar ficheiros de redes como Internet. O principal beneficio de usar o comando wget é que pode usarse para descargar de forma recursiva os ficheiros. Polo tanto, se quere descargar un sitio completo pode facelo cun simple comando. O comando wget tamén é bo para descargar moitos ficheiros.
O comando Curl permítelle empregar comodíns para especificar os URL que desexa recuperar. Entón, se sabe que hai un URL válido chamado "http://www.mysite.com/images/image1.jpg" e "http://www.mysite.com/images/image2.jpg", entón podes descargar tanto imaxes cun só URL especificado co comando Curl.
O comando wget pode recuperarse cando falla unha descarga mentres que o comando curl non pode.
Podes obter unha boa idea das latas e os canots con respecto ao comando wget e curl desta páxina. Extrañamente, unha das diferenzas desta páxina indica que podes escribir wget usando só a túa man esquerda nun teclado QWERTY.
Ata agora, houbo moitas razóns para usar wget over curl pero nada de por que usaría curl over wget.
O comando curl soporta máis protocolos que o comando wget, tamén ofrece un mellor soporte para SSL. Tamén soporta máis métodos de autenticación que wget. O comando curl tamén funciona en máis plataformas que o comando wget.
Características do rizo
Usando o comando Curl pode especificar varios URL na mesma liña de comandos e se os URL están no mesmo sitio, todos os URL deste sitio serán descargados usando a mesma conexión que é boa para o rendemento.
Pode especificar un intervalo para facilitar a descarga de URL con nomes de camiños similares.
Tamén hai unha biblioteca de curl que usa o comando curl chamado libcurl. Isto pódese usar con varias linguaxes de programación e script para raspar información das páxinas web.
Mentres se descarga o contido aparecerá unha barra de progreso cunha velocidade de descarga ou subida, canto tempo pasou o comando ata agora e canto tempo aínda hai que ir.
O comando Curl funciona en grandes ficheiros de máis de 2 gigabytes para descargar e cargar.
Segundo esta páxina que compara as funcións de curl con outras ferramentas de descarga, o comando Curl ten a seguinte funcionalidade:
- Múltiples URL
- Os nomes de usuario e os contrasinais son compatibles
- Soporte IPv6
- Non se volveu a intentar descargar de novo
- URL globbing / secuencias
- Soporte de Win32
- Soporte de arquivo grande
- Soporte de GnuTLS
- Soporte DarwinSSL
- Soporte de Schannel
- Soporte Cyassl
- Soporte PolarSSL
- AxTLS apoio
- ID de sesión de SSL
- Certificado privado SSL
- soporte netrc
- Soporte Metalink
- Soporte IDN
- Limitación de ancho de banda
- Ollos felices felices
- SOCKS
- TFTP
- Carga / descarga de SCP
- Carga / descarga SFTP
- Proxy HTTP
- Resume HTTP
- Intervalos HTTP
- Segue redireccións HTTP
- Publicación HTTP
- Correo HTTP bloqueado
- Poñer en HTTP
- Soporte de cookies
- HTTP 1.1
- HTTP 2 (actualización de texto sen formato)
- HTTP 2 (TLS ALPN)
- HTTP 2 (TLS NPN)
- Conexións persistentes HTTP
- HTTPS
- Autenticación de HTTP Digest
- Autenticación HTLT NTLM
- HTTP Negociar a autenticación
- Parte Múltipla HTTP
- HTTP Deflate gzip
- FTP resume
- Intervalos de FTP
- Modo activo FTP
- FTP SSL
- Carga de FTP
- FTP Kerberos
- Reutilización da conexión FTP
- GOPHER