Baixar Arquivos da Internet

LinuxBeginner
Pratique Agora

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.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 95%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Baixando um Arquivo com curl

Vamos começar usando curl para baixar um arquivo HTML simples de um site.

  1. Abra seu terminal.

  2. 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).

  1. Agora, vamos usar curl para 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 usando
  • http://example.com é a URL da página web que estamos baixando
  • -o example.html diz ao curl para salvar o conteúdo baixado em um arquivo chamado example.html. A opção -o significa "output" (saída).
  1. Após executar o comando, curl baixará o conteúdo e o salvará como example.html em 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.

  1. 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.

  1. À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.

  1. 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.

  1. Primeiro, vamos tentar baixar as páginas index e about de example.com e 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.

  1. Para salvar esses arquivos em vez de exibi-los, usaremos a opção -O. O -O maiúsculo diz ao curl para 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.

  1. 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.

  1. 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.

  1. Vamos começar usando wget para 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.

  1. Por padrão, wget salva 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.

  1. 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.

  1. Agora, vamos usar curl para 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.

  1. Em seguida, vamos usar wget para 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.

  1. 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.

  1. Para ver o conteúdo desses arquivos sem alterar nosso diretório atual, podemos usar cat com 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:

  1. Você usou curl para baixar arquivos individuais e salvá-los com nomes personalizados.
  2. Você explorou como baixar vários arquivos com um único comando curl.
  3. Você aprendeu como usar wget para baixar arquivos, tanto com nomes padrão quanto personalizados.
  4. Você praticou o download de arquivos recursivamente com wget.
  5. Você aprendeu como baixar arquivos para um diretório específico usando tanto curl quanto wget.

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!