Android

Comando Curl no linux com exemplos

Ajuda Linux - Dia 718 - Comando curl

Ajuda Linux - Dia 718 - Comando curl

Índice:

Anonim

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

sudo yum install curl

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:

curl -O

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:

curl -C - -O

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:

curl -L google.com

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.

terminal de ondulação