所以我有这个Bash子例程来使用wget下载文件,现在我的问题是如何重新下载未完成的文件。该脚本下载了大量文件,一旦下载失败,它将重新下载所有文件并跳过那些成功的下载(“--continue”参数)。是否可以从未完成的文件开始下载(因为它可能已损坏),然后下载剩余的文件?
DownloadFile() {
paramURL=$1
paramFilename=$2
if [ $flag_archive_fetch = "false" ];
then
wget "--continue" "--timeout=180" "--tries=5" "$paramURL" "-O" "${scratch_dir}$paramFilename"
else
unzip -o "$archive_file" "$paramFilename" -d "${scratch_dir}"
fi
touch "${scratch_dir}$paramFilename"
}
2条答案
按热度按时间e0bqpujr1#
在wget命令中添加-nc(无clobber)标志。
zf9nrax12#
在我正在开发的一个类似的脚本中,我测试该文件是否存在。如果是,我会将本地md5校验和与服务器上的校验和进行比较。如果检查失败,则重新下载文件。