Answers:
的-nc
,--no-clobber
选择是不是最好的解决方案,新的文件将无法下载。一个人应该改用-N
仅当服务器具有较新版本时才下载并覆盖文件,因此正确的答案是:
wget -N http://www.example.com/images/misc/pic.png
然后运行Wget的,被-N,有或没有
-r
或-p
,至于是否要下载文件的较新副本的决定取决于文件的本地和远程的时间戳和大小。-nc
可能与不能同时指定-N
。
-N
,--timestamping
:打开时间戳记。
-N
可能会失败,并且wget将始终重新下载。所以有时候-nc
是更好的解决方案。
wget
将会抱怨Last-modified header missing
;这正是所概述的情况。
当使用-r
或-p
而不使用-N
,-nd
或来运行Wget时-nc
,重新下载文件将导致新的副本仅覆盖旧的副本。
因此,添加-nc
将防止此行为,而导致保留原始版本,并忽略服务器上的所有较新副本。
我一直在寻找的答案是https://unix.stackexchange.com/a/9557/114862。
-c
当本地文件的大小大于或等于服务器版本时使用该标志将避免重新下载。
wget -i filelist.txt -c
将恢复文件列表下载失败。
-nc
不会阻止HTTP请求的发送和随后文件的下载。如果已经完全检索了文件,下载文件后它什么都不做。无论如何,如果文件已经存在,是否可以阻止发出HTTP请求?stackoverflow.com/questions/33203898/…–