15 consejos sobre cómo usar el comando 'curl' en Linux

15 consejos sobre cómo usar el comando 'curl' en Linux

A mediados de la década de 1990, cuando Internet todavía estaba en su infancia, un programador sueco nombrado Daniel Stenberg comenzó un proyecto que finalmente se convirtió en lo que sabemos como rizo hoy.

Inicialmente, tenía como objetivo desarrollar un bot Eso descargaría los tipos de cambio de divisas desde una página web periódicamente y proporcionaría equivalentes de Kronor suecos en dólares estadounidenses a usuarios de IRC.

En pocas palabras, el proyecto prosperó, agregando varios protocolos y características en el camino, y el resto es historia. Ahora vamos a sumergirnos con ambos pies y aprender a usar Curl para transferir datos y más en Linux!

Hemos reunido la siguiente lista de 15 comandos curl para usted.

1. Ver versión de curl

El -V o --versión Las opciones no solo devolverán la versión, sino también los protocolos y funciones compatibles en su versión actual.

$ curl --versión rizo 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 Protocolos: archivo DICT ftp ftps gopher http https imap iMaps LDAP LDAPS POP3 POP3S RTMP RTSP SMB SMTP SMTP SMTPS TETTP TFTP: AsynChDNS IDN IPV6 GRANDE GSS-API KERBEROS SPNEGO NTLM NTLM_WB SSL LITST LITST LITST LITST TLETS TLETS TLET 

2. Descargar un archivo

Si desea descargar un archivo, puede usar rizo con el -O o -O opción. El primero guardará el archivo en el directorio de trabajo actual con el mismo nombre que en la ubicación remota, mientras que el segundo le permite especificar un nombre de archivo y/o ubicación diferentes.

$ curl -o http: // yourdomain.com/yourfile.alquitrán.Gz # Guardar como ause.alquitrán.gz $ curl -o newfile.alquitrán.gz http: // yourdomain.com/yourfile.alquitrán.GZ # Guardar como Newfile.alquitrán.GZ 

3. Reanudar una descarga interrumpida

Si se interrumpió una descarga por alguna razón (por ejemplo, usando Ctrl + C), puede reanudarlo muy fácilmente. El uso de -C - (Dash C, Space Dash) le dice a Curl que reanude la descarga que comienza donde dejó.

$ curl -c --o http: // yourdomain.com/yourfile.alquitrán.GZ 
Descargar archivo usando el comando curl

4. Descargar varios archivos

Con el siguiente comando descargará información.html y acerca de.html de http: // tuyeite.comunicarse y http: // mysite.comunicarse, respectivamente, de una vez.

$ curl -o http: // tuyeite.com/información.html -o http: // mysite.com/sobre.html 

5. Descargar URL de un archivo

Si combinas rizo Con XARGS, puede descargar archivos de una lista de URL en un archivo.

$ xargs -n 1 curl -o < listurls.txt 
Descargue varios archivos con curl

6. Use un proxy con o sin autenticación

Si está detrás de un servidor proxy escuchando en el puerto 8080 en apoderado.Tu dominio.comunicarse, hacer.

$ curl -x proxy.Tu dominio.com: 8080 -U Usuario: contraseña -o http: // YourDomain.com/yourfile.alquitrán.GZ 

donde puedes omitir -U usuario: contraseña Si su proxy no requiere autenticación.

7. CONSEJOS DE CUERRA HTTP

Http Los encabezados permiten que el servidor web remoto envíe información adicional sobre sí mismo junto con la solicitud real. Esto proporciona al cliente detalles sobre cómo se maneja la solicitud.

Para consultar los encabezados HTTP de un sitio web, haga:

$ curl -i www.tecmenta.comunicarse 
CURL CONSULTA DE CURL HTTP CABELORES

Esta información también está disponible en las herramientas de desarrollador de su navegador.

8. Haga una solicitud de publicación con parámetros

El siguiente comando enviará el nombre de pila y apellido parámetros, junto con sus valores correspondientes, a https: // yourdomain.com/información.php.

$ curl --data "firstName = John & LastName = doe" https: // YourDomain.com/información.php 

Puede usar este consejo para simular el comportamiento de un formulario HTML regular.

9. Descargue archivos de un servidor FTP con o sin autenticación

Si un servidor FTP remoto espera conexiones en ftp: // yourftpserver, El siguiente comando se descargará tu archivo.alquitrán.GZ En el directorio de trabajo actual.

$ curl -u nombre de usuario: contraseña -o ftp: // Yourftpserver/YourFile.alquitrán.GZ 

donde puedes omitir -u Nombre de usuario: contraseña Si el servidor FTP permite inicios de sesión anónimos.

10. Cargar archivos a un servidor FTP con o sin autenticación

Para cargar un archivo local llamado mylocalfile.alquitrán.GZ a ftp: // yourftpserver Usando curl, haz:

$ curl -u nombre de usuario: contraseña -t mylocalfile.alquitrán.gz ftp: // yourftpserver 

11. Especificar agente de usuario

El agente de usuario es parte de la información que se envía junto con un Http pedido. Esto indica qué navegador usó el cliente para hacer la solicitud. Veamos qué usa nuestra versión curl actual como predeterminada, y cambiemos más tarde a "Soy un nuevo navegador web":

$ curl -i http: // localhost --user -agent "Soy un nuevo navegador web" 
Agente de usuario de control de curl

12. Almacenar cookies del sitio web

Quiere ver qué cookies se descargan a su computadora cuando navegue https: // www.CNN.comunicarse? Use el siguiente comando para guardarlos para cnncookies.TXT. Luego puede usar el comando CAT para ver el archivo.

$ curl--cookie-jar cnncookies.txt https: // www.CNN.com/índice.html -o 
Cookies del sitio web de Curl Store

13. Enviar cookies del sitio web

Puede usar las cookies recuperadas en el último consejo en las solicitudes posteriores al mismo sitio.

$ Curl -Cookie Cnncookies.txt https: // www.CNN.comunicarse 

14. Modificar la resolución de nombre

Si eres un desarrollador web y quieres probar una versión local de Tu dominio.comunicarse Antes de presionarlo en vivo, puedes hacer que Curl se resuelva http: // www.Tu dominio.comunicarse a tu localhost así:

$ curl - -resolve www.Tu dominio.com: 80: localhost http: // www.Tu dominio.com/ 

Así, la consulta a http: // www.Tu dominio.comunicarse le dirá a Curl que solicite el sitio desde localhost en lugar de usar DNS o el /etc/huéspedes archivo.

15. Tasa de descarga de límite

Para evitar que el rizo engimen su ancho de banda, puede limitar la tasa de descarga a 100 kb/s como sigue.

$ curl --limit-thate 100k http: // yourdomain.com/yourfile.alquitrán.GZ -O 
Resumen

En este artículo hemos compartido una breve historia de los orígenes de Curl y explicamos cómo usarlo a través de 15 ejemplos prácticos.

¿Conoces cualquier otro comando de curl que pudiéramos haber perdido en este artículo?? Siéntase libre de compartirlos con nuestra comunidad en los comentarios! Además, si tiene preguntas, no dude en hacernos saber. Esperamos con interés escuchar de usted!