7-Zip CMD:将当前日期添加到存档并仅包含存档中最后修改的文件夹

TMR*_*MRW 8 command-line batch-file 7-zip

我正在尝试使用7-Zip创建备份脚本。我已经完成了其他所有工作,但是这两个问题仍然阻碍了我。

首先,我想添加一个带有创建日期的时间戳,如下所示: 3.11.2010 Backup.7z

所以dd.mm.yyyy格式。我尝试了在 Internet 上找到的几个版本,但没有一个能像我想要的那样工作。我该怎么办?

其次,我只想将最后修改的文件夹添加到存档中(无论目录中存在多少个文件夹;我只需要最新的)。基本上,我有这样的事情:

App_v.1.0.0.4.exe_Url_2um2yok5q4vpoxnvnscpq3adfwff4wsmi
App_v.1.0.0.5.exe_Url_ft4mnvbu54hfrgdhxrahj4imlmermdsoe
Run Code Online (Sandbox Code Playgroud)

所以我只想添加最新的(1.0.0.5)文件夹。这些文件夹会更改并且总是具有不同的名称,因此基于名称的排序将是一个坏主意。

Sat*_*hat 9

7z a -r "%DATE:~7,2%.%DATE:~4,2%.%DATE:~-4% Backup".7z
Run Code Online (Sandbox Code Playgroud)

将使用DD.MM.YYYY Backup.7z格式创建存档。

说明:Echoing%DATE%以您的区域日期格式设置打印日期。

D:\>echo %DATE%
Thu 11/04/2010
Run Code Online (Sandbox Code Playgroud)

通过使用~x,y说明符,您正在对字符串进行字符串/子字符串提取 -您希望提取x的起始字符和字符y数在哪里。

关于你的第二点:

我只想将最后修改的文件夹添加到存档中(无论目录中存在多少个文件夹,我只需要最新的)。

7z u -r "%DATE:~2,2%.%DATE:~5,2%.%DATE:~-4% Backup".7z 
Run Code Online (Sandbox Code Playgroud)

应该这样做。

7zip 日期