如何仅在文件被修改时下载并提取文件?

如何仅在文件被修改时下载并提取文件?

我的示例脚本(不是真正使用的脚本)

if exist dependencies2015.zip (  
    curl -kLO https://obsproject.com/downloads/dependencies2015.zip -f --retry 5 -z dependencies2015.zip  
:: I want 7z extract when curl download newer file only here  
    7z.exe x dependencies2015.zip -y -o.  
) else (  
    curl -kLO https://obsproject.com/downloads/dependencies2015.zip -f --retry 5 -C -  
    7z.exe x dependencies2015.zip -y -o.  
)  

我想在文件比本地副本更新时下载并提取文件。(在脚本中,Windows)目前我使用 7zip 下载并提取文件。本地副本更新时我可以跳过 curl 下载。但 7zip 不知道文件是否已更改,并且始终提取它。

curl 退出代码显示不同的错误,但我看不到操作完成的状态。我是否错过了什么,或者还有其他方法可以做我想做的事情。

答案1

我想出了这个主意

if exist dependencies2015.zip (
    curl -kLo new.zip https://obsproject.com/downloads/dependencies2015.zip -f --retry 5 -z dependencies2015.zip
    if exist new.zip (
        7z.exe x new.zip -y -o.
        move /y new.zip dependencies2015.zip
    )
) else (
    curl -kLO https://obsproject.com/downloads/dependencies2015.zip -f --retry 5 -C -
    7z.exe x dependencies2015.zip -o.
)

不是我想要的完美,但它能
修复拼写错误,哈哈

相关内容