To jest najprostszy przykład uruchamiania wget:
wget http://www.example.com/images/misc/pic.png
ale jak sprawić, by wget pomijał pobieranie, jeśli pic.png
jest już dostępny?
parameters
download
command-line-interface
wget
nais inpoh gan
źródło
źródło
-nc
nie uniemożliwia wysłania żądania HTTP i późniejszego pobrania pliku. Po prostu nie robi nic po pobraniu pliku, jeśli plik został już w pełni pobrany. Czy istnieje sposób, aby zapobiec wysyłaniu żądania HTTP, jeśli plik już istnieje? stackoverflow.com/questions/33203898/...[ ! -e "$(basename $URL)" ] && wget $URL
--recursive
opcji.-nc
,--no-clobber
Opcja ta nie jest najlepszym rozwiązaniem, ponieważ nowe pliki nie zostaną pobrane.-N
Zamiast tego należy użyć, który pobierze i nadpisze plik tylko wtedy, gdy serwer ma nowszą wersję, więc poprawna odpowiedź to:źródło
-N
może się nie powieść, a wget zawsze pobierze ponownie. Więc czasami-nc
jest lepsze rozwiązanie.wget
będzie narzekałLast-modified header missing
; jest to dokładnie nakreślona sytuacja.Podczas uruchamiania Wget z
-r
lub-p
, ale bez-N
,-nd
lub-nc
, ponowne pobranie pliku spowoduje, że nowa kopia po prostu nadpisze stary.Tak więc dodanie
-nc
zapobiegnie takiemu zachowaniu, zamiast tego spowoduje zachowanie oryginalnej wersji i zignorowanie wszelkich nowszych kopii na serwerze.Zobacz więcej informacji na GNU.
źródło
Odpowiedź, której szukałem, to https://unix.stackexchange.com/a/9557/114862 .
źródło
wget -i filelist.txt -c
wznowi nieudane pobieranie listy plików.