使用makecab压缩整个文件夹

使用makecab压缩整个文件夹

我最近也做过类似的事情。但我使用了一个名为DDFGenerator的外部工具。它是免费和小的,它可以正确地处理长文件名。

要使用makecab.exe压缩结构化文件夹和文件,DDF文件是必须的。我没有使用您引用的答案中提到的批处理脚本,而是使用DDFGenerator实现了相同的目标。

DDFGenerator on CodePlex

假设您要“压缩”的文件夹位于C:\MyFolder\MyData,使用以下命令在C:\MyFolder中生成一个名为"solution.ddf“的DDF文件:

代码语言:javascript运行复制DDFGenerator "C:\MyFolder"请注意,DDFGenerator.exe会迭代您提供的文件夹“下”的文件,因此要压缩C:\MyFolder\ MyData,您应该将" C:\MyFolder“传递给它,并确保MyData是C:\MyFolder中的唯一项。

在生成solution.ddf之后,需要进行一些小的调整。只需使用您喜欢的任何文本编辑器打开"solution.ddf“,并进行以下更改:

替换这两行(在最开始):

代码语言:javascript运行复制.Set DiskDirectoryTemplate=CDROM

.Set CompressionType=MSZIP目标为:

代码语言:javascript运行复制.Set CabinetName1={YourCabName}.cab

.Set CompressionType=LZX

.Set CabinetFileCountThreshold=0

.Set FolderFileCountThreshold=0

.Set FolderSizeThreshold=0

.Set MaxCabinetSize=0

.Set MaxDiskFileCount=0

.Set MaxDiskSize=0(将{YourCabName}替换为您需要的任何内容)这些更改可确保不会拆分,并具有更好的压缩比。

然后,在C:\MyFolder中运行makecab命令以构建cab:

代码语言:javascript运行复制makecab.exe /F solution.ddf完成后,{YourCabName}.cab将位于C:\MyFolder\disk1下。只需使用它并删除已生成的其他文件。

要在当前路径下“解压缩”cab,请使用命令:

代码语言:javascript运行复制expand {YourCabName}.cab /F:* .

相关推荐

花螺怎么清洗才干净
beat365在线体育打不开

花螺怎么清洗才干净

📅 07-26 👁️ 3785
2013年黄金价格走势揭秘:一克黄金究竟值多少钱?
beat365在线体育打不开

2013年黄金价格走势揭秘:一克黄金究竟值多少钱?

📅 07-22 👁️ 8158
饥荒蔬菜指南:种菜不疯魔的生存之道
bt365体育网址

饥荒蔬菜指南:种菜不疯魔的生存之道

📅 07-27 👁️ 4282
海信【43E2F】43英寸/悬浮全面屏/FHD全高清/8GB大存储电视
beat365在线体育打不开

海信【43E2F】43英寸/悬浮全面屏/FHD全高清/8GB大存储电视

📅 07-09 👁️ 6184
邀请函用什么软件做 苹果发布会邀请函一般提前多久?
beat365在线体育打不开

邀请函用什么软件做 苹果发布会邀请函一般提前多久?

📅 08-06 👁️ 7659
发布信息必备利器:十款热门发帖软件推荐
beat365在线体育打不开

发布信息必备利器:十款热门发帖软件推荐

📅 08-04 👁️ 1493
小米13有什么限量定制色
365app手机版官方

小米13有什么限量定制色

📅 07-22 👁️ 7779
pdf哪个软件好用?国内PDF工具软件深度解析
beat365在线体育打不开

pdf哪个软件好用?国内PDF工具软件深度解析

📅 07-11 👁️ 1745
0721的由来
beat365在线体育打不开

0721的由来

📅 08-13 👁️ 4782