Usando o cURL - Client URL

O cURL é um comando disponível na maioria dos sistemas baseados em Linux/Unix, sendo utilizado como uma abreviação para Client URL. Comandos cURL são utilizados muitas vezes para verificar a conectividade de uma URL, além disso, é uma ótima ferramenta para a transferência de dados e arquivos.

[ Hits: 10.066 ]

Por: Diego Mendes Rodrigues em 06/08/2020 | Blog: https://www.linkedin.com/in/diegomendesrodrigues/


O que é o cURL



Esse é um comando disponível na maioria dos sistemas baseados em Linux/Unix, sendo utilizado como uma abreviação para Client URL. Comandos curl são utilizados muitas vezes para verificar a conectividade de uma URL, além disso, é uma ótima ferramenta para a transferência de dados e arquivos.

O comando curl suporta diversos protocolos, dentre os quais podemos destacar:
  • HTTP e HTTPS
  • FTP e FTPS
  • IMAP e IMAPS
  • POP3 e POP3S
  • SMB e SMBS
  • SFTP
  • SCP
  • TELNET
  • GOPHER
  • LDAP e LDAPS
  • SMTP e SMTPS

Instalar o cURL

Para instalar o curl, caso ele não esteja disponível no seu Linux, utilize o seguinte comando:

sudo apt install curl

Agora, verifique a versão do seu curl:

curl -version

No meu caso, possuo a versão 7.64.0 instalada.

cURL - Sintaxe do comando

A sintaxe básica do comando é da seguinte forma:

curl <OPTIONS> <URL>

O uso mais simples do comando curl é para mostrar o conteúdo de uma página, como por exemplo a página inicial do Viva o Linux.

curl https://www.vivaolinux.com.br

Observe nas próximas imagens que recebi o código HTML deste site.
Pode-se utilizar o curl para realizar o download de arquivos, de um servidor remoto para a sua estação de trabalho. Existem 2 opções que podem ser utilizadas:
  • -O: irá salvar o arquivo no diretório atual, com o mesmo nome do arquivo remoto
  • -o: irá salvar o arquivo no diretório especificado, com um novo nome de arquivo

curl -O https://www.drsolutions.com.br/vol/exemplo.tar.gz
curl -o novoArquivo.tar.gz https://www.drsolutions.com.br/vol/exemplo.tar.gz

Observe na imagem abaixo, que agora tenho 2 arquivos descarregados, o exemplo.tar.gz e o novoArquivo.tar.gz.
Caso o download seja interrompido, você pode dar continuidade nele, reiniciando com o comando curl, da seguinte forma:

curl -C - -O https://www.drsolutions.com.br/vol/exemplo.tar.gz

Pode-se também realizar o download de diversos arquivos de uma única vez, através de uma única chamada do curl.

curl -O https://www.drsolutions.com.br/vol/fornecedores.tar.gz -O https://www.drsolutions.com.br/vol/clientes.tar.gz

cURL - HTTP e HTTPS

Uma solicitação HTTP sempre possui um cabeçalho que envia as informações adicionais sobre o servidor remoto, junto com a solicitação atual. Podemos ver os cabeçalhos de uma URL, utilizando o curl com a opção -I. Veja os cabeçalhos do Viva o Linux.

curl -I https://www.vivaolinux.com.br
Podemos realizar requisições GET e POST utilizando o curl.

A requisição GET acontece da seguinte forma:

curl http://exemplodesite.com.br

A requisição POST, na página contato.php, enviando o campo nome=Diego, deve ser feita com esse comando:

curl -data "nome=Diego" http://exemplodesite.com.br/contato.php

Caso seja necessário alterar o agente de usuário (navegador), pode-se utilizar a opção --user-agent.

curl -I https://www.vivaolinux.com.br --user-agent "Firefox"

cURL - FTP

Através do curl pode-se também utilizar o FTP, realizando o download de arquivos, ou o upload deles.

Para realizar o download de um arquivo, utilize da seguinte forma:

curl -u username:password -O ftp://exemplodesite.com.br/projetos.tar.gz

Para realizar o upload de um arquivo, utilize da seguinte forma:

curl -u username:password -T imagens.tar.gz ftp://exemplodesite.com.br

Caso seja utilizando um FTP anônimo, não será necessário enviar os dados de usuário e senha.

Se você quiser conhecer melhor o curl, dê uma olhada no manual dele.

man curl

Você utiliza o curl?

   

Páginas do artigo
   1. O que é o cURL
Outros artigos deste autor

Alternativas ao Microsoft Visio para Linux

Gerar Códigos QRCode com Python

Listando os serviços Linux com o Systemctl

Truques úteis de linha de comando Linux para iniciantes

Instalar o Ubuntu Server

Leitura recomendada

Como criar pacotes para o Arch Linux (parte 2) - pacotes svn e cvs

Colocando ícones no menu do Fluxbox

Ganhe uma camiseta do Viva o Linux ajudando o Viva o Android

Ubuntu + Zoneminder = Solução Livre para CFTV

GNU/Linux, um projeto de sucesso (parte 1)

  
Comentários
[1] Comentário enviado por maurixnovatrento em 06/08/2020 - 20:16h


Muito bem explicativo.

___________________________________
Conhecimento não se Leva para o Túmulo.

[2] Comentário enviado por diegomrodrigues em 07/08/2020 - 13:30h


[1] Comentário enviado por mauricio123 em 06/08/2020 - 20:16h


Muito bem explicativo.

___________________________________
Conhecimento não se Leva para o Túmulo.


Obrigado!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts