Ajuda Linux - Dia 718 - Comando curl
Índice:
- Instalando o Curl
- Instale o Curl no Ubuntu e Debian
- Instale o Curl no CentOS e Fedora
- Como usar o cacho
- Salve a saída em um arquivo
- Baixar vários arquivos
- Retomar um download
- Obter os cabeçalhos HTTP de um URL
- Alterar o agente do usuário
- Especifique uma taxa máxima de transferência
- Transferir arquivos via FTP
- Enviar Cookies
- Usando Proxies
- Conclusão
curl
é um utilitário de linha de comando para transferir dados de ou para um servidor projetado para funcionar sem a interação do usuário. Com o
curl
, você pode baixar ou fazer upload de dados usando um dos protocolos suportados, incluindo HTTP, HTTPS, SCP, SFTP e FTP.
curl
fornece várias opções que permitem retomar transferências, limitar a largura de banda, suporte a proxy, autenticação de usuário e muito mais.
Neste tutorial, mostraremos como usar a ferramenta de curvatura através de exemplos práticos e explicações detalhadas das opções de curvatura mais comuns.
Instalando o Curl
O pacote curl está pré-instalado na maioria das distribuições Linux atualmente.
Para verificar se o pacote Curl está instalado no seu sistema, abra o console, digite
curl
e pressione enter. Se você tiver o
curl
instalado, o sistema imprimirá o
curl: try 'curl --help' or 'curl --manual' for more information
. Caso contrário, você verá algo como o
curl command not found
.
Se o
curl
não estiver instalado, você poderá instalá-lo facilmente usando o gerenciador de pacotes da sua distribuição.
Instale o Curl no Ubuntu e Debian
sudo apt update
sudo apt install curl
Instale o Curl no CentOS e Fedora
Como usar o cacho
A sintaxe para o comando
curl
é a seguinte:
curl
Em sua forma mais simples, quando invocada sem nenhuma opção,
curl
exibe o recurso especificado para a saída padrão.
Por exemplo, para recuperar a página inicial
example.com
você executaria:
curl example.com
O comando imprimirá o código fonte da página inicial
example.com
na sua janela do terminal.
Se nenhum protocolo for especificado, o
curl
tentará adivinhar o protocolo que você deseja usar e o padrão será
HTTP
.
Salve a saída em um arquivo
Para salvar o resultado do comando
curl
, use a opção
-o
ou
-O
.
Minúsculas
-o
salva o arquivo com um nome de arquivo predefinido, que no exemplo abaixo é
vue-v2.6.10.js
:
curl -o vue-v2.6.10.js
Maiúsculas
-O
salva o arquivo com seu nome de arquivo original:
Baixar vários arquivos
Para baixar vários arquivos de uma vez, use várias opções
-O
, seguidas pela URL do arquivo que você deseja baixar.
No exemplo a seguir, estamos baixando os arquivos iso do Arch Linux e Debian:
curl -O http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso \
-O
Retomar um download
Você pode retomar um download usando a opção
-C -
. Isso é útil se a sua conexão cair durante o download de um arquivo grande e, em vez de iniciar o download do zero, você pode continuar o anterior.
Por exemplo, se você estiver baixando o arquivo iso Ubuntu 18.04 usando o seguinte comando:
curl -O
e de repente sua conexão cai, você pode retomar o download com:
Obter os cabeçalhos HTTP de um URL
Os cabeçalhos HTTP são pares de valores-chave separados por dois pontos que contêm informações como agente do usuário, tipo de conteúdo e codificação. Os cabeçalhos são passados entre o cliente e o servidor com a solicitação ou a resposta.
Use a opção
-I
para buscar apenas os cabeçalhos HTTP do recurso especificado:
curl -I --http2


A opção
-L
instrui o
curl
a seguir qualquer redirecionamento até atingir o destino final:
Alterar o agente do usuário
Às vezes, ao baixar um arquivo, o servidor remoto pode ser configurado para bloquear o Curl User-Agent ou retornar um conteúdo diferente, dependendo do dispositivo e do navegador do visitante.
Em situações como esta para emular um navegador diferente, use a opção
-A
.
Por exemplo, para emular o Firefox 60, você usaria:
curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0"
Especifique uma taxa máxima de transferência
A opção
--limit-rate
permite limitar a taxa de transferência de dados. O valor pode ser expresso em bytes, kilobytes com o sufixo
k
, megabytes com o sufixo
m
e gigabytes com o sufixo
g
.
No exemplo a seguir, o
curl
fará o download do binário Go e limitará a velocidade de download para 1 mb:
curl --limit-rate 1m -O
Esta opção é útil para evitar que a
curl
consuma toda a largura de banda disponível.
Transferir arquivos via FTP
Para acessar um servidor FTP protegido com
curl
, use a opção
-u
e especifique o nome de usuário e a senha, conforme mostrado abaixo:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Após o login, o comando lista todos os arquivos e diretórios no diretório inicial do usuário.
Você pode baixar um único arquivo do servidor FTP usando a seguinte sintaxe:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/file.tar.gz
Para fazer upload de um arquivo para o servidor FTP, use
-T
seguido do nome do arquivo que você deseja enviar:
curl -T newfile.tar.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Enviar Cookies
Às vezes, pode ser necessário fazer uma solicitação HTTP com cookies específicos para acessar um recurso remoto ou depurar um problema.
Por padrão, ao solicitar um recurso com
curl
, nenhum cookie é enviado ou armazenado.
Para enviar cookies para o servidor, use a opção
-b
seguida de um nome de arquivo que contenha os cookies ou uma string.
Por exemplo, para baixar o arquivo rpm Oracle Java JDK
jdk-10.0.2_linux-x64_bin.rpm
você precisará passar um cookie chamado
oraclelicense
com o valor
a
:
curl -L -b "oraclelicense=a" -O
Usando Proxies
curl
suporta diferentes tipos de proxies, incluindo HTTP, HTTPS e SOCKS. Para transferir dados através de um servidor proxy, use a opção
-x
(
--proxy
), seguida pela URL do proxy.
O comando a seguir baixa o recurso especificado usando um proxy na porta
192.168.44.1
8888
:
curl -x 192.168.44.1:8888
Se o servidor proxy exigir autenticação, use a opção
-U
(
--proxy-user
) seguida do nome do usuário e da senha separados por dois pontos (
user:password
):
curl -U username:password -x 192.168.44.1:8888
Conclusão
curl
é uma ferramenta de linha de comando que permite transferir dados de ou para um host remoto. É útil para solucionar problemas, baixar arquivos e muito mais.
Os exemplos mostrados neste tutorial são simples, mas demonstram as opções de
curl
mais usadas e servem para ajudá-lo a entender como o comando
curl
funciona.
Para obter mais informações sobre
curl
visite a página Documentação de curl.
Comando eco no linux com exemplos
O comando echo é um dos comandos mais básicos e mais usados no Linux. Os argumentos transmitidos para eco são impressos na saída padrão.
Comando de corte do Linux com exemplos
Cut é um utilitário de linha de comando que permite cortar partes de linhas de arquivos especificados ou dados canalizados e imprimir o resultado na saída padrão. Neste tutorial, mostraremos como usar o comando de corte do Linux por meio de exemplos práticos e explicações detalhadas das opções de corte mais comuns.
Comando de data do Linux com exemplos
O comando date exibe ou define a data do sistema. É mais comumente usado para imprimir a data e a hora em diferentes formatos e calcular datas futuras e passadas.







