压缩软件有没有 版本模式?常见的都是覆盖模式

突然想到一个需求,不知道现有的rar/7z有没有实现:
我们每次往一个压缩包里扔文件时,如果相对路径文件名相同,一般都是覆盖的。
有没有多版本模式?即同一个文件它自动加上不同的版本号(最简单就是文件名加精确到毫秒的当前时间),
一般只显示、释放最新的版本,只有追溯时才列出单个或所以文件的所有历史版本供查看或释放。

感觉还是比较常见的功能(没有版本管理系统下的版本管理),实现起来好像也不复杂。

你这个需求大概是同步备份软件的压缩功能实现。

比如 goodsync

还要同步软件啊,我同步一般都是tc的同步文件夹 两边比较再同步。。。。

现在这个需求是一些配置ini、脚本bat等文件修改后,都是手工加一个编号保存。小文件在压缩包里才最不浪费,压缩包如果能自动再编号(或者加到毫秒的时间)就省心多了。
专门用同步软件就有点大阵仗了

tc群有spv网友说winrar有这个功能:本来被覆盖的文件,被扩展名加了“;n”而保留了。
开始在自己的5.21上没找到备份的tab页,下载了6.11也没有!
后来发现是 创建默认设置 后才有。
希望是仅仅对几个rar包是这样,不希望它对所有rar都如此。。。。
不过这样也问题不大了

去年我也找过这功能,研究了一下,rar 自带,7z不行,但是可以用 windows 批处理变相实现。
%date:~0,4%-%date:~5,2%-%date:~8,2%
还有一个小软件 https://www.vfilename.com/

2 个赞

这个工具有点意思啊

我在测 V File Name 的时候发现拖拽文件夹进去不显示信息…不知道哪里出现了偏差。

居然是需要 7z 格式才行,搞定了。这货挺香的

用winrar的命令行参数就不用创建默认设置了


参数 -VER[n] - 文件版本控制

当在已经存在的压缩文件中更新文件时,强制 RAR 保留前一文件版本。旧版本被命名为‘filename;n’处是版本号。仅只吃 RAR 压缩文件。

当时不使用参数 -ver 解压一个压缩文件,rar 默认只解压最近添加地文件版本,它的名字不能包含数字后缀。但是如果您正确指定了文件名,包括版本,它也可以解压。例如,‘ rar x arcname’将只解压组新版本,当使用‘rar x arcname file.txt;5’将解压‘file.txt;5’,如果它在压缩文件中存在的话。

解压时如果您不带参数指定 -ver 参数, RAR 将解压所有和文件掩码匹配的所有文件中的所有版本。这样版本号没有从未压缩文件名中删除。您也可以使用数字作为 -ver 的参数来解压一个具体的文件版本。它将告诉 RAR只解压这个版本并从文件名中删除版本号。例如,‘ rar x -ver5 arcname’将只解压第五版本文件。

如果压缩时您指定了‘n ’参数,它会限制在压缩文件中文件版本的最大数字。超过此限制的旧的文件版本会被移除。

当使用 -ver 参数压缩时,建议在要添加的文件里避免 ‘filename;n’ 格式的名称。此类名称可能导致重复项目,如果在压缩文件里存在较老版本的同名文件或将在之后创建。

呃,其实说实话,我其实也没太搞明白这软件咋用:joy:

所以这不是你推荐的么…

看第一段介绍好像正是针对我的需求,
但第二段怎么【Altium Designer是流行的电路设计工具】?
如果是操纵winrar/7z实现的,介绍得有点复杂了。。。。

看看这个

1 个赞

这样介绍就清楚很多。。。。。
好像跟最初tc群有人建议用 自动运行的第三方工具(ahk之类的)实现的自动输入文件名 类似,
的确是最贴切的解决办法:生成的工具简单,使用的时候都不需要这个工具