¿Que é Curl e por que o usaría?

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: