Este é o exemplo mais simples da execução do wget:
wget http://www.example.com/images/misc/pic.png
mas como fazer o wget pular o download, se pic.pngjá estiver disponível?
Este é o exemplo mais simples da execução do wget:
wget http://www.example.com/images/misc/pic.png
mas como fazer o wget pular o download, se pic.pngjá estiver disponível?
Respostas:
Tente o seguinte parâmetro:
-nc,--no-clobber: pule os downloads que seriam baixados para os arquivos existentes.
Uso da amostra:
wget -nc http://example.com/pic.png
[ ! -e "$(basename $URL)" ] && wget $URL
--recursiveopção
A opção -nc, --no-clobbernão é a melhor solução, pois os arquivos mais recentes não serão baixados. Em -Nvez disso, deve-se usar o que fará o download e substituirá o arquivo se o servidor tiver uma versão mais recente; portanto, a resposta correta é:
wget -N http://www.example.com/images/misc/pic.png
Em seguida, executando o Wget com -N, com ou sem
-rou-p, a decisão de baixar ou não uma cópia mais recente de um arquivo depende do carimbo de data e hora local e remoto e do tamanho do arquivo.-ncpode não ser especificado ao mesmo tempo que-N.
-N,--timestamping: Ligue selo de tempo.
-Npoderá falhar e o wget sempre fará o download novamente. Então, às vezes, -ncé a melhor solução.
wgetele reclamará Last-modified header missing; essa é exatamente a situação descrita.
Ao executar o Wget com -rou -p, mas sem -N, -ndou-nc , o download de um arquivo resultará na nova cópia simplesmente substituindo a antiga.
Portanto, a adição -ncimpedirá esse comportamento, fazendo com que a versão original seja preservada e que quaisquer cópias mais recentes no servidor sejam ignoradas.
A resposta que eu estava procurando está em https://unix.stackexchange.com/a/9557/114862 .
O uso do
-csinalizador quando o arquivo local tiver tamanho maior ou igual à versão do servidor evitará o download novamente.
wget -i filelist.txt -ccontinuará um download com falha de uma lista de arquivos.
-ncnão impede o envio da solicitação HTTP e o subsequente download do arquivo. Ele simplesmente não faz nada após o download do arquivo, se o arquivo já tiver sido totalmente recuperado. Existe alguma maneira de impedir a solicitação HTTP se o arquivo já existir? stackoverflow.com/questions/33203898/...