Como baixar arquivos a partir da linha de comando do linux

Wget é um muito legal downloader de linha de comando para ambientes Linux e UNIX. Não se deixe enganar pelo fato de que é uma ferramenta de linha de comando. É muito poderoso e versátil e pode combinar algumas das melhores downloaders gráficas em torno de hoje. Ele tem características tais como a retomada de downloads, controle de banda, ele pode lidar com autenticação, e muito mais. Eu vou tirar você começou com os conceitos básicos do uso wget e então eu vou mostrar como você pode automatizar um backup completo do seu site usando wget

e cron.

Vamos começar com a instalação de wget. A maioria das distribuições Linux vem com wget pré-instalado. Se você conseguir se aterrar uma máquina Linux, sem uma cópia do wget tente o seguinte. Em um sistema baseado Red Hat Linux tal Fedora você pode usar:

# yum install wget

ou se você usar um sistema baseado em Debian como o Ubuntu:

# sudo apt-get instalar wget

Um dos acima deve fazer o truque para você. Caso contrário, verifique com o manual da sua distribuição Linux para ver como obter e instalar pacotes. wget também foi portado para o Windows. Os usuários do Windows pode acessar este site. Baixe os seguintes pacotes: ssllibs e wget. Extrair e copiar os arquivos para um diretório como C: Program Files wget e adicionar esse diretório ao caminho de seu sistema para que você possa acessá-lo com facilidade. Agora você deve ser capaz de acessar wget de sua linha de comando do Windows.

A operação mais básica um gerenciador de download precisa fazer é baixar um arquivo a partir de uma URL. Veja como você iria usar wget para baixar um arquivo:

Video: Compilar e Instalar programas a partir do Código Fonte no Linux

# wget http://sevenacross.com/photos.zip

Sim, é tão simples. Agora vamos fazer algo mais divertido. Vamos baixar um site inteiro. Aqui está uma amostra do poder da wget. Se você deseja fazer o download de um site, você pode especificar a profundidade que wget deve buscar arquivos. Digamos que você queira fazer o download dos primeiros elos nível de home page do Yahoo!. Veja como faria isso:

# wget -r -l 1 http://yahoo.com/

Aqui está o que cada uma das opções faz. o -r ativa a recuperação recursiva de arquivos. o -eu significa nível, eo número 1 ao lado ele diz wget quantos níveis de profundidade para ir ao buscar os arquivos. Tente aumentar o número de níveis para dois e ver quanto tempo leva wget.

Agora, se você deseja fazer o download de todas as imagens “JPEG” de um site, um usuário familiarizado com a linha de comando Linux pode imaginar que um comando como “http wget: //sevenacross.com*.jpeg” iria funcionar. Bem, infelizmente, ele não vai. O que você precisa fazer é algo como isto:

# wget -r -l1 -no-mãe -A.jpeg http://sevenacross.com

Outra opção muito útil em wget é a retomada de um download. Digamos que você começou a baixar um arquivo grande e você perdeu sua conexão com a Internet antes que o download pode ser concluído. Você pode usar o -c opção de continuar o download de onde você deixou.



# wget -c http://sevenacross.com/ubuntu-live.iso

Agora vamos passar para a criação de um backup diário de um site. O seguinte comando irá criar um espelho de um local em seu disco local. Para este wget propósito tem uma opção específica, -espelho. Tente o seguinte comando, substituindo http://sevenacross.com com o endereço do seu site.

# wget -Espelho http://sevenacross.com/

Quando o comando é feito em execução, você deve ter um espelho local do seu site. Isto faz para uma ferramenta muito útil para backups. Vamos transformar este comando em um script shell fresco e programá-lo para ser executado à meia-noite todas as noites. Abra o seu editor de texto favorito e digite o seguinte. Lembre-se de adaptar o caminho do backup e URL do site para suas necessidades.

#! / Bin / bash

ANO = `data +”% Y”`
MÊS = `data +”% m”`
DIA = `data +”% d”`

BACKUP_PATH = `/ home / backup /` # substituir caminho com o seu diretório de backup
WEBSITE_URL = `http: // sevenacross.net` # substituir url com o endereço do site que você deseja fazer o backup

# Criar e mover para o diretório de backup
cd $ BACKUP_PARENT_DIR / $ ANO / MÊS $
mkdir $ DIA
cd $ DIA

wget -Espelho $ {WEBSITE_URL}

Agora salve este arquivo como algo como website_backup.sh e conceder permissões executáveis:

# chmod + x website_backup.sh

Video: Comando xargs - Construir e executar linhas de comando no Linux

Abra a configuração do cron com o crontab de comando e adicione a seguinte linha no final:

0 0 * * * /path/to/website_backup.sh

Você deve ter uma cópia do seu site em / Home / backup / ano / mês / DIA todo dia. Para obter mais ajuda usando cron e crontab, ver neste tutorial.

Há muito mais a aprender sobre wget do que eu mencionei aqui. Leia-se página homem do wget.


Artigos relacionados