Usos de exemplo do comando Linux Curl

Nesta guía, mostraráselle como usar o comando Curl para descargar ficheiros e páxinas web. Se queres saber que curl é e cando debes usalo sobre wget ler esta páxina .

O comando Curl pode usarse para transferir ficheiros usando varios formatos, incluíndo http, https, ftp e even smb.

Esta guía mostraralle como usar o comando e presentaralle unha serie de chaves e funcións.

Usos de comando de curl básico

O comando Curl pode usarse para descargar ficheiros de internet pero no seu xeito básico, pode descargar o contido da páxina web directamente á xanela do terminal.

Por exemplo, introduza o seguinte comando nunha xanela de terminal:

curl http://linux.about.com/cs/linux101/g/curl.htm

A saída desprázase na xanela do terminal e mostraralle o código da páxina web ligada.

Obviamente, a páxina despraza demasiado rápido para ler e, se desexa ralentizar, debería empregar o comando menos ou o comando máis .

curl http://linux.about.com/cs/linux101/g/curl.htm | máis

Saída dos contidos do curl a un ficheiro

O problema co uso do comando curl básico é que o texto se despraza moi rápido e se está a descargar un ficheiro como unha imaxe ISO, entón non quere que isto vaia á saída estándar.

Para gardar o contido nun ficheiro, todo o que tes que facer é especificar o selector de menos o (-o) do seguinte xeito:

curl-o

Polo tanto, para descargar a páxina ligada na sección básica de uso do comando, todo o que tes que facer é introducir o seguinte comando:

curl -o curl.htm http://linux.about.com/cs/linux101/g/curl.htm

Despois de que o arquivo descargue pode abrilo nun editor ou o seu programa predeterminado determinado polo tipo de ficheiro.

Pode simplificalo aínda máis empregando o interruptor O menos O (-O) do seguinte xeito:

Curl-O http://linux.about.com/cs/linux101/g/curl.htm

Isto empregará a porción do nome do ficheiro da URL e converte no nome do ficheiro no que se garda a URL. Na instancia anterior o ficheiro chamarase curl.htm.

Executar o comando Curl no fondo

De xeito predeterminado, o comando Curl mostra unha barra de progreso que lle indica canto tempo lle queda e cantos datos foron transferidos.

Se só quere que se execute o comando para que poida continuar con outras cousas, o primeiro que cómpre facer é executalo en modo silencioso e logo cómpre executalo como comando de fondo .

Para executar un comando en silencio use o seguinte comando:

curl -s -O

Para que o comando se execute en segundo plano, entón necesitará usar o & ampersand & amp; amp; & amp; amp; & amp; seguinte xeito:

curl -s -O &

Descargando varios URL con Curl

Pode descargar desde varias URLs usando un único comando de curvas.

Na súa forma máis sinxela pode descargar varias URL como segue:

curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html

Imaxina que ten un cartafol con 100 imaxes chamadas image1.jpg, image2.jpg, image3.jpg, etc. Non quererá ter que escribir todas estas URL e non tes que escribir.

Podes usar paréntesis cadrados para fornecer un intervalo. Por exemplo, para obter os ficheiros do 1 ao 100 pode especificar o seguinte:

curl -O http://www.mysite.com/images/image[1-100].jpg

Tamén pode usar corchetes para especificar varios sitios con formatos similares.

Por exemplo, imaxina que queres descargar www.google.com e www.bing.com. Pode simplemente usar o seguinte comando:

curl -O http: // www. {google, bing} .com

Mostrando o progreso

De xeito predeterminado o comando curl devolve a seguinte información xa que descarga un URL:

Se prefire unha barra de progreso simple que simplemente especifique o interruptor de hash (- #) menos do seguinte xeito:

curl - # -O

Manipulación de redireccións

Imaxina que especificou unha URL como parte do comando Curl e pensa que ten o enderezo correcto para descargar un arquivo grande só para volver máis tarde para descubrir que todo o que tes é unha páxina web que indica que "esta páxina foi redirixida a www.blah. com ". Iso sería molesto non o faria.

O comando curl é intelixente porque pode seguir as redireccións. Todo o que tes que facer é empregar o interruptor L de menos (-L) do seguinte xeito:

curl -OL

Reducir a taxa de descarga

Se está a descargar un arquivo grande e ten unha mala conexión a Internet, entón pode irritar á familia se están tentando facer cousas tamén en internet.

Afortunadamente, pode reducir a taxa de descarga co comando Curl para que, aínda que tardará máis tempo en descargar o arquivo, pode que todo o mundo se sinta feliz.

curl-O - límite de velocidade 1m

A taxa pódese especificar en kilobytes (k ou K), megabytes (m ou m) ou gigabytes (g ou G).

Descargar arquivos desde un servidor FTP

O comando Curl pode manexar máis que transferencias de ficheiros HTTP. Pode manipular FTP, GOPHER, SMB, HTTPS e moitos outros formatos.

Para descargar ficheiros desde un servidor FTP use o seguinte comando:

curl -u usuario: contrasinal -o

Se especifica o nome dun ficheiro como parte da URL, entón baixará o ficheiro, pero se especifica o nome dun cartafol, devolverá unha listaxe de cartafoles.

Tamén pode usar curl para cargar ficheiros a un servidor ftp empregando o seguinte comando:

curl -u usuario: contrasinal -T

Os nomes dos ficheiros e poden usar a mesma combinación de patrón que a descarga de varios ficheiros HTTP.

Pasar os datos do formulario a un formulario

Podes usar curl para cubrir un formulario en liña e enviar os datos coma se estivesen enchido en liña. Moitos servizos populares como Google bloquean este tipo de uso.

Imaxina que hai un formulario cun nome e un enderezo de correo electrónico. Pode enviar esta información como segue:

curl -d name = john email@john@mail.com www.mysite.com/formpage.php

Existen varias maneiras de transferir información do formulario. O comando anterior usa o texto básico pero se desexa usar codificación múltiple que permite a transferencia de imaxes, entón necesitará usar o interruptor de menos F (-F).

Resumo

O comando Curl ten moitos métodos de autenticación diferentes e pode usalo para acceder a sitios FTP, enviar correos electrónicos, conectarse a enderezos SAMBA, cargar e descargar ficheiros e moitas outras cousas.

Para obter máis información sobre curl, lea a páxina do manual.