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.png
já 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.png
já 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
--recursive
opção
A opção -nc
, --no-clobber
não é a melhor solução, pois os arquivos mais recentes não serão baixados. Em -N
vez 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
-r
ou-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.-nc
pode não ser especificado ao mesmo tempo que-N
.
-N
,--timestamping
: Ligue selo de tempo.
-N
poderá falhar e o wget sempre fará o download novamente. Então, às vezes, -nc
é a melhor solução.
wget
ele reclamará Last-modified header missing
; essa é exatamente a situação descrita.
Ao executar o Wget com -r
ou -p
, mas sem -N
, -nd
ou-nc
, o download de um arquivo resultará na nova cópia simplesmente substituindo a antiga.
Portanto, a adição -nc
impedirá 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
-c
sinalizador quando o arquivo local tiver tamanho maior ou igual à versão do servidor evitará o download novamente.
wget -i filelist.txt -c
continuará um download com falha de uma lista de arquivos.
-nc
nã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/...