我有一个包含 *.wek 文件的目录。每天某个应用程序都会在那里添加大约 10 个新文件。我只想在一天中的某个时间存档这 10 个新文件。我读过关于 7-zip 机制的文章,但我还没有找到如何根据日期过滤文件,以便只存档当天的文件。
有什么帮助吗?谢谢。
答案1
我不清楚你想做什么。
选项 1:为什么不直接压缩整个目录?压缩过程并不关心昨天是否有 10 个文件,以及今天是否添加了 10 个新文件。
选项 2:创建一个批处理文件,删除昨天的 zip 文件,然后为今天创建一个新的 zip 文件。
选项 3:创建一个批处理文件,一次存档一个 *.wek 文件。如果存档文件已经存在,则不对该文件执行任何操作。
选项 3 的代码:
::此文件将把*.wek文件备份到*.wek.zip中
:: 即 abc.wek 被压缩成 abc.wek.zip
:: 如果匹配的 zip 文件已经存在,则不会备份原始文件。
:: 即,如果 cde.wek.zip 已经存在,则不会备份 cde.wek
:: 重要的:
:: 将 \path\to\files(如下)更改为需要备份的文件的正确路径
:: 将 \path\to\archives(下面两次)更改为备份文件夹的正确位置
:: 将 c:\tools\7zip\7za.exe(如下)更改为 7-zip 命令行工具的正确路径 ::
::确保我们在 C 盘上
C:
:: 更改为我们的数据目录
cd \路径\到\文件
:: 创建备份
对于 (*.wek) 中的 %%k,如果不存在“c:\path\to\archives\%%k.zip”,则执行 c:\tools\7zip\7za.exe a“c:\path\to\archives\%%k.zip” “%%k”