Editado 3 Semanas atrás por ExtremeHow Equipe Editorial
Linha de comandoRedesSolicitações HTTPTransferências de ArquivosBaixandoUtilitáriosScriptingAutomaçãoWebFerramentas
Tradução atualizada 3 Semanas atrás
Linux é um sistema operacional poderoso que é amplamente utilizado para uma variedade de tarefas. As duas ferramentas mais comuns para interagir com a web via linha de comando são wget
e curl
. Essas ferramentas são indispensáveis para quem precisa baixar arquivos, fazer solicitações HTTP ou interagir com recursos da Internet diretamente do terminal. Este guia irá introduzi-lo aos conceitos básicos dos comandos wget
e curl
, discutir suas diferenças e mostrar como usá-los de maneira eficaz.
wget
é uma utilidade de linha de comando que permite baixar arquivos da web. Ele suporta os protocolos HTTP, HTTPS e FTP, tornando-o uma ferramenta versátil para interagir com recursos da web. Para começar, você primeiro precisa verificar se o wget
está instalado em seu sistema Linux. Abra seu terminal e digite:
wget --version
Se o wget
estiver instalado, você verá seu número de versão. Se não estiver, você pode instalá-lo usando o gerenciador de pacotes da sua distribuição. Por exemplo, no Ubuntu ou Debian, use:
sudo apt-get install wget
No Fedora, use:
sudo dnf install wget
Uma vez que o wget
esteja instalado, você pode usá-lo para baixar arquivos. A maneira mais fácil de usar o wget
é digitar o comando seguido pelo URL do arquivo que você deseja baixar:
wget http://example.com/file.txt
Este comando baixará file.txt
de http://example.com
e o salvará no diretório atual. wget
usa o diretório atual como o diretório base para salvar arquivos, a menos que especificado de outra forma.
Uma das características mais úteis do wget
é sua capacidade de retomar downloads pausados. Se o seu download foi interrompido, você pode retomá-lo com a opção -c
:
wget -c http://example.com/largefile.zip
Se o largefile.zip
já tiver sido parcialmente baixado, este comando retomará o download.
Para baixar múltiplos arquivos com wget
, você pode usar um arquivo de texto contendo uma lista de todos os URLs que deseja baixar. Por exemplo, crie um arquivo chamado urls.txt
com os URLs dos arquivos, depois passe-o para o wget
com a opção -i
:
wget -i urls.txt
Este comando baixará todos os arquivos listados em urls.txt
.
wget
também suporta downloads recursivos, o que pode ser útil para espelhamento de um site inteiro. Para fazer o wget
baixar arquivos de forma recursiva, use a opção -r
:
wget -r http://example.com
Este comando baixará todos os arquivos vinculados da página web especificada, até uma profundidade de link padrão de 5.
Às vezes, você pode querer limitar a velocidade de download para evitar consumir muita largura de banda. Você pode usar a opção --limit-rate
para limitar a velocidade de download:
wget --limit-rate=100k http://example.com/file.iso
Este comando baixará o arquivo a uma velocidade máxima de 100 kilobytes por segundo.
curl
é outra ferramenta de linha de comando que permite interagir com recursos da web. É mais versátil que o wget
, especialmente quando se trata de realizar solicitações além dos simples downloads de arquivos. Para verificar se o curl
está instalado, digite:
curl --version
Se o curl
não estiver instalado, você pode instalá-lo usando o seguinte:
Para Ubuntu ou Debian:
sudo apt-get install curl
Para Fedora:
sudo dnf install curl
O uso mais simples do curl
é exibir o conteúdo de um URL diretamente no terminal. Você pode conseguir isso digitando:
curl http://example.com
Este comando irá buscar o conteúdo de http://example.com
e exibi-lo na janela do seu terminal.
Ao contrário do wget
, o curl
não salva arquivos por padrão. Para salvar a saída em um arquivo, use a opção -o
seguida pelo nome do arquivo desejado:
curl -o file.txt http://example.com/file.txt
Este comando irá baixar file.txt
e salvá-lo como file.txt
no diretório atual.
Para retomar um arquivo parcialmente baixado com o curl
, use a opção -C -
:
curl -C - -o file.txt http://example.com/file.txt
Este comando irá reiniciar o download e continuar de onde você parou.
curl
é particularmente poderoso para fazer solicitações HTTP e pode lidar com uma variedade de tipos de solicitação, como POST, PUT, DELETE, etc. Para fazer uma solicitação GET (que é o padrão), você pode simplesmente digitar:
curl http://api.example.com/data
Para uma solicitação POST, você pode enviar dados usando a opção -d
:
curl -d "param1=value1¶m2=value2" http://api.example.com/post
Isso envia uma solicitação POST com os parâmetros param1
e param2
.
curl
permite adicionar cabeçalhos personalizados às suas solicitações, o que pode ser útil para interações com APIs. Use a opção -H
para incluir cabeçalhos:
curl -H "Authorization: Bearer token" http://api.example.com/data
Este comando adiciona um cabeçalho de Authorization
com um token bearer.
Tanto wget
quanto curl
podem usar um servidor proxy ao fazer solicitações. Para wget
, você pode definir um proxy configurando as variáveis de ambiente http_proxy
e https_proxy
:
export http_proxy="http://proxyaddress:port"
wget http://example.com/file.txt
Para curl
, você pode especificar um proxy usando a opção -x
:
curl -x http://proxyaddress:port http://example.com/file.txt
Tanto wget
quanto curl
são ferramentas extremamente úteis para interagir com recursos da web a partir da linha de comando no Linux. wget
é excelente para downloads diretos de arquivos e suporta recursos como download recursivo, enquanto curl
proporciona mais flexibilidade para interagir com serviços web e lidar com diferentes tipos de solicitações HTTP. Entender como usar essas ferramentas de maneira eficiente pode melhorar muito seu fluxo de trabalho e produtividade ao lidar com a linha de comando do Linux.
Em conclusão, dominar os comandos wget
e curl
pode ser um ativo valioso para usuários que frequentemente trabalham com interações na web. Seja para baixar arquivos, acessar APIs ou extrair dados de websites, essas ferramentas oferecem mecanismos robustos para alcançar seus objetivos diretamente do terminal.
Se você encontrar algo errado com o conteúdo do artigo, você pode