Baixar apenas arquivos modificados recentemente com o wget sobre FTP

3

Ao buscar recursivamente com wget de um servidor FTP, como posso baixar apenas arquivos modificados após uma determinada data?

O caso de uso é que preciso sincronizar com vários servidores todas as noites, mas só preciso dos dados de alguns dias atrás. O sinalizador --mirror seria suficiente, exceto que a sincronização do restante dos dados (mesmo que apenas uma vez) levaria uma eternidade.

    
por Peter Woo 23.09.2011 / 22:24

2 respostas

2

wget pode espelhar uma vez e, depois disso, obter somente itens posteriores com o sinalizador --timestamp . Eu sugiro ler a página info , que tem uma boa explicação, e verificar se isso lhe dá o comportamento que você está procurando.

    
por 23.09.2011 / 23:48
0

Não, isso não é suportado pelo wget, a menos que você já tenha sincronizado uma vez, seja por meio do wget ou não (nesse caso, consulte --timestamp ).

Aqui estão algumas soluções alternativas que você pode tentar:

  • Se os arquivos contiverem datas no nome ou no caminho, e não apenas na hora da modificação do arquivo, você poderá usar regexes / diretórios para excluir arquivos antigos.
  • Use algo diferente de wget . Isso parece ser um bom candidato para um script dedicado. Você ainda pode usar o wget para um arquivo de cada vez. Você também pode verificar o wpull, que eu não usei, mas entendo que é semelhante ao wget com scripts para determinar se as páginas devem ser baixadas.
  • Se você tiver uma opção de download de HTTP além do FTP, poderá enviar cabeçalhos de diretiva de cache HTTP personalizados, que só baixam o arquivo se ele for modificado após uma determinada data.
por 28.06.2017 / 20:22