Introdução
Neste laboratório, você aprenderá como baixar arquivos da internet usando duas ferramentas de linha de comando comuns: curl e wget. Essas ferramentas são essenciais para recuperar arquivos e dados de servidores web, tornando-as habilidades valiosas para qualquer usuário ou desenvolvedor Linux.
curl é uma ferramenta versátil que pode baixar arquivos de vários protocolos e realizar requisições HTTP. wget é uma ferramenta mais simples, usada principalmente para baixar arquivos de servidores web. Ao final deste laboratório, você se sentirá confortável usando ambas as ferramentas para baixar arquivos e fazer requisições HTTP básicas.
Baixando um Arquivo com curl
Vamos começar usando curl para baixar um arquivo HTML simples de um site.
Abra seu terminal.
Navegue até o diretório do projeto. No terminal, digite:
cd /home/labex/project
Este comando altera seu diretório atual para /home/labex/project. O comando cd significa "change directory" (mudar diretório).
- Agora, vamos usar
curlpara baixar uma página web. Digite o seguinte comando:
curl http://example.com -o example.html
Vamos detalhar este comando:
curlé o nome do programa que estamos usandohttp://example.comé a URL da página web que estamos baixando-o example.htmldiz aocurlpara salvar o conteúdo baixado em um arquivo chamadoexample.html. A opção-osignifica "output" (saída).
- Após executar o comando,
curlbaixará o conteúdo e o salvará comoexample.htmlem seu diretório atual. Para verificar se o arquivo foi baixado, podemos listar o conteúdo do diretório:
ls -l example.html
O comando ls lista arquivos e diretórios. A opção -l nos dá uma listagem detalhada (longa). Você deve ver example.html na saída, juntamente com informações sobre seu tamanho e quando foi modificado pela última vez.
Examinando o Arquivo Baixado
Agora que baixamos o arquivo, vamos dar uma olhada em seu conteúdo.
- Para exibir o conteúdo do arquivo, usaremos o comando
cat. Digite:
cat example.html
cat significa "concatenate" (concatenar), mas é comumente usado para exibir o conteúdo de arquivos. Você deve ver o conteúdo HTML da página inicial do example.com. Isso pode parecer uma confusão de texto se você não estiver familiarizado com HTML, mas não se preocupe - é o código bruto que os navegadores web usam para exibir páginas web.
- Às vezes, os arquivos podem ser muito grandes e podemos querer ver apenas o começo. Para isso, podemos usar o comando
head:
head -n 10 example.html
Este comando mostra as primeiras 10 linhas do arquivo. A opção -n 10 diz ao head para mostrar 10 linhas. Você pode alterar este número para ver mais ou menos linhas.
- Para ver o final do arquivo, você pode usar o comando
tail:
tail -n 10 example.html
Isso mostra as últimas 10 linhas do arquivo.
Esses comandos são úteis para inspecionar rapidamente arquivos sem abri-los completamente, especialmente ao lidar com arquivos grandes.
Baixando Vários Arquivos com curl
curl pode baixar múltiplos arquivos em um único comando. Vamos tentar baixar dois arquivos de uma vez.
- Primeiro, vamos tentar baixar as páginas index e about de
example.come exibir seu conteúdo:
curl http://example.com/index.html http://example.com/about.html
Este comando exibirá o conteúdo de ambas as páginas no seu terminal. Você verá dois documentos HTML impressos um após o outro. Isso pode ser útil para verificações rápidas, mas não é ideal se você quiser salvar os arquivos.
- Para salvar esses arquivos em vez de exibi-los, usaremos a opção
-O. O-Omaiúsculo diz aocurlpara usar o nome do arquivo da URL:
curl -O http://example.com/index.html -O http://example.com/about.html
Este comando baixa ambos os arquivos e os salva com seus nomes originais (index.html e about.html) em seu diretório atual. Você não verá o conteúdo impresso no terminal desta vez.
- Para verificar se os arquivos foram baixados, podemos listar o conteúdo do diretório:
ls -l index.html about.html
Você deve ver ambos os arquivos listados, juntamente com seus tamanhos e horários da última modificação.
- Se você quiser baixar múltiplos arquivos, mas dar a eles nomes personalizados, você pode usar múltiplas opções
-o:
curl -o custom_index.html http://example.com/index.html -o custom_about.html http://example.com/about.html
Isso salvará os arquivos como custom_index.html e custom_about.html.
Usando wget para Baixar Arquivos
Agora vamos explorar wget, outra ferramenta popular para baixar arquivos. wget é frequentemente preferido por sua simplicidade e sua capacidade de lidar com downloads grandes ou conexões instáveis.
- Vamos começar usando
wgetpara baixar um arquivo de example.com:
wget http://example.com/index.html
wget exibirá uma barra de progresso enquanto baixa o arquivo. Isso é particularmente útil para arquivos maiores, pois você pode ver quanto do arquivo foi baixado e quanto tempo pode levar para ser concluído.
- Por padrão,
wgetsalva o arquivo com seu nome original. Para especificar um nome diferente, use a opção-O(observe que é um O maiúsculo, ao contrário do curl, que usa um o minúsculo):
wget -O custom_name.html http://example.com/index.html
Isso salvará o arquivo como custom_name.html. A barra de progresso ainda será exibida, mas o arquivo será salvo com o nome especificado.
Baixando Arquivos para um Diretório Específico
Frequentemente, você desejará baixar arquivos para um diretório específico, em vez do seu diretório de trabalho atual. Tanto curl quanto wget permitem que você faça isso, mas eles usam métodos diferentes.
- Primeiro, vamos criar um novo diretório para baixar nossos arquivos:
mkdir downloads
Isso cria um novo diretório chamado downloads em sua localização atual.
- Agora, vamos usar
curlpara baixar um arquivo para este diretório:
curl -o downloads/curl_file.html http://example.com
A opção -o em curl nos permite especificar o arquivo de saída, incluindo seu caminho. Este comando baixa o conteúdo de example.com e o salva como curl_file.html no diretório downloads.
- Em seguida, vamos usar
wgetpara baixar um arquivo para o mesmo diretório:
wget -P downloads http://example.com/index.html
A opção -P em wget significa "prefixo" e nos permite especificar o diretório onde queremos salvar o arquivo. Este comando baixa index.html de example.com e o salva no diretório downloads.
- Podemos verificar se ambos os arquivos foram baixados para o diretório
downloads:
ls -l downloads
Você deve ver tanto curl_file.html quanto index.html na saída.
- Para ver o conteúdo desses arquivos sem alterar nosso diretório atual, podemos usar
catcom o caminho completo:
cat downloads/curl_file.html
cat downloads/index.html
Isso nos permite verificar o conteúdo dos arquivos baixados.
Resumo
Parabéns! Você concluiu com sucesso o laboratório sobre como baixar arquivos da internet usando curl e wget. Vamos recapitular o que você aprendeu:
- Você usou
curlpara baixar arquivos individuais e salvá-los com nomes personalizados. - Você explorou como baixar vários arquivos com um único comando
curl. - Você aprendeu como usar
wgetpara baixar arquivos, tanto com nomes padrão quanto personalizados. - Você praticou o download de arquivos recursivamente com
wget. - Você aprendeu como baixar arquivos para um diretório específico usando tanto
curlquantowget.
Essas habilidades são fundamentais para muitas tarefas no Linux, desde a recuperação de conteúdo da web até o download de pacotes de software. À medida que você continua sua jornada no Linux, você descobrirá que essas ferramentas são inestimáveis para várias tarefas de scripting e automação.
Lembre-se, tanto curl quanto wget têm muitas mais opções e capacidades que você pode explorar. Sinta-se à vontade para verificar suas páginas man (man curl e man wget) para aprender mais sobre seus recursos avançados.
Continue praticando e explorando essas ferramentas para se tornar mais proficiente em trabalhar com arquivos e conteúdo da web no Linux!



