Usando o wget para baixar arquivos de um servidor FTP com senha
Todos que conhecem o wget sabem o quanto ele pode ser útil, um canivete suíço na hora de transferir arquivos. E mais uma vez ele foi perfeito para resolver o meu problema.
Normalmente faço o download dos arquivos que preciso assim:
1 | > wget http://um_site_qualquer.com/ebooks/exemplo_de_arquivo.pdf |
Caso precise de vários arquivos utilizo a opção -r (–recursive), assim o wget vai trabalhar de forma recursiva:
1 | > wget -r http://um_site_qualquer.com/ebooks/ |
E se for preciso recomeçar de onde parou é só utilizar a opção -c (–continue):
1 | > wget -c http://um_site_qualquer.com/ebooks/ |
Agora imagine ter que baixar ou até mesmo mover um site inteito!
Com o parâmetro -m (–mirror) isso é possível, essa opção é um atalho para um grupo de opções tais como: -N –timestamping, -r –recursive, -l inf e –no-remove-listing. Essas opções ativam a recursão, o modo time-stamping, definem a recursão em nível infinito e mantem as listas de diretórios do FTP.
1 | > wget -m ftp://um_site_qualquer.com/htdocs |
Agora vem o “pulo do gato”, normalmente esse tipo de acesso, exige usuário e senha. Mas nada que um “man wget” não resolva né.
Na sessão de opções do HTTP temos:
1 2 | --http-user=USER Define o usuário do http --http-password=PASS Define a senha do http |
Na sessão de opções do FTP temos:
1 2 | --ftp-user=USER Define o usuário do ftp --ftp-password=PASS Define a senha do ftp |
E na sessão geral temos os parâmetros que podem ser usados para os dois casos:
1 2 | --user=USER Define o usuário do ftp e http --password=PASS Define a senha do ftp e http |
Um modo mais enxuto de escrever é esse aqui:
1 |
Por fim, caso não queira exibir a senha na linha do comando basta fazer assim:
1 |
Espero que tenham gostado e que ajuda a vocês como me ajudou. 😉