如何将这些设置转换为命令?
Archiv format:7z
compression level: Fastest
Compression method: LZMA2
Dictionary size: 64kb
Word size: 32
Solid Block size: 8MB
Number of CPU threads: 30
我试过了:
"7z.exe" a -t7z "F:\BACKUP" "D:\Source" -m0=LZMA2:d=64k
压缩效果很好,但使用GUI需要3个小时,而不是1个小时。我查看了文档,但我无法理解。
答案 0 :(得分:12)
这个问题在Super User上比在Stack Overflow上更好,因为它不是关于编程,而是关于如何使用命令行工具和任务的正确选项。
7-Zip附带帮助文件<?php
$dates = array(
'2016-10-10', '2016-10-11'
);
$json_dates = json_encode($dates);
$arr = json_decode($json_dates, true);
?>
,可以通过双击打开。在帮助标签目录上,列表项命令行版本。从命令行读取7-Zip使用的第一个帮助页面是命令行语法显示在顶部
7z&lt; command&gt; [&lt; switch&gt; ...]&lt; base_archive_name&gt;并[d参数&GT; ...]
所以从这一行应该清楚,应该在命令的字符和存档文件名之间指定所有开关。稍后在命令行上也支持开关,但是应该避免在归档文件名右侧指定开关。
帮助页面 -m(设置压缩方法)开关确实不是很容易理解。在这个帮助页面的底部有一些例子,但是语法不是很清楚。
我认为与所需选项一起使用的命令行是:
7-zip.chm
"7z.exe" a -t7z -m0=LZMA2:d64k:fb32 -ms=8m -mmt=30 -mx=1 -- "F:\BACKUP" "D:\Source"
是添加命令。
a
将存档类型设置为7-Zip。
-t7z
定义了LZMA2压缩方法的用法,字典大小为64 KB,字长(快速字节)为32。
-m0=LZMA2:d64k:fb32
启用实体模块,其实体块大小为8 MB。
-ms=8m
支持最多30个线程的多线程模式。
-mmt=30
选择最快的压缩作为压缩级别。
-mx=1
停止在命令行的其余部分解析其他开关。